VBAのすすめ

※以前のエントリーを復活させたものです。画像はイメージです。

VBAのすすめ

 

名古屋の公認会計士・税理士の児島泰洋です。
AIやRPAなどによる業務の自動化がさかんに叫ばれていますが、以前からMicrosoftのExcelやAccessにはVBA(Visual Basic for Applications)というプログラミングツールが実装されています。VBAとはVisual Basicというプログラミング言語で特定のアプリケーションを動かすものです。

会計ソフトなどのソフトウェア自体も発達してきていますが、自社の業務にあった処理を行いたいときや、オリジナルの報告資料を作成するには、Excelなどにデータをダウンロードして自ら加工しなければなりません。

データの加工作業は何度も行ううちに定型化されていきますので、定型化された処理をVBAのプログラムに落とし込んでしまえば、自動的に処理させることができます。そうすると、加工時間を大幅に短縮でき、かつ、間違いも起こらなくなります。

私は経理部に在籍していた頃、①経理日程表の作成にExcel VBA、②親会社から請求される経費の精算にAccess VBAを使用して、業務を大幅に効率化させました。その実例を紹介させていただきます。

①経理日程表にExcel VBAを使用

経理日程表は2営業日までに売上確定、4営業日までに人件費データ確定といったスケジュールをひとつの表にまとめたものです。

私はこの作業を当初数時間かけて行なっていました。まだ、Excelに慣れていない新人のときの話ではありますが。1年ぐらい経つとExcelも一通り覚えてだいぶ早くできるようになってきましたが、この表は定型的な作業を手順通りやれば作成できてしまうことに気がつきました。

そんなときにExcel VBAのことを知り、空いた業務時間を利用してプログラミングを独学しながら、ひたすらコードを書いては動かすことに熱中しました。

経理日程表はどの作業をいつまでにというパラメーターさえ指定してしまえば、プログラムに自動的に作成させることが可能でした。

もちろん、すべてのコードを自分で書くことはできないので、「マクロの記録」(Excel上で行った処理を記録し、自動的にコードに変換する機能)も利用しました。条件分岐などは自分でコーディングして、具体的な処理はマクロの記録で自動記述したコードを適当な箇所に挿入しました。

何度も失敗しては、コードを書き直し完成にこぎつけました。

そのおかげで、経理日程表はたった3分でできるようになりました。

②親会社からの経費請求の処理にAccess VBAを使用

親会社からは毎月、子会社のために負担した何十もの経費の請求がAccessデータで送付されました。

経理部ではこのデータをいったん関係部署ごとに紙に落とし(!)、関係部署に社内便で送り、経費を処理すべき勘定科目と負担する部署を紙に書いてもらい、また社内便で経理部に送り返してもらい、その紙の内容を伝票にひとつひとつ入力していくといった作業をしていました。(いま思い返すと手作業が多く手間がかかる作業です。)

先輩の助言により、Accessでもらったデータをそのまま活用できることを知った自分は、Access VBAでこの作業を効率化することを思い立ちました。

まず、関係部署ごとに経費を分ける作業は、VBAをわざわざ使わず、Accessの基本機能で行いました。

関係部署に送るときはやはり紙に落として社内便で送りました。(これも今ならデータでそのまま関係部署に送ることができるでしょう。)

親会社から請求される経費について、どの勘定科目、どの負担部署を使用するのかについても、Accessの基本機能(ドロップダウン機能など)を使えば簡単にデータ入力することができました。

この入力データをもとに何十行にもわたる伝票入力をしなければなりませんでしたが、ここはVBAで効率化することができました。この作業も何時間もかかるものでしたが、半分以下には減らすことができました。(当時の会計システムは仕訳データをアップロードする機能がありませんでしたが、現在の会計システムにはアップロードに対応しているものがありますので、さらに効率化できるでしょう。)

VBAの基本構文はそんなに多くないので、その気になれば誰でもプログラミングを身に着けることができます。

プログラミングを学習すると、業務を構造的に理解・記述し、パターン化する能力などが身につくなど副次的な効果もあります。

また、業務をコンピュータに行わせるためにいかに詳細かつ具体的に処理内容を記述しなければならないかを知ることは、自分以外のひとに業務をやってもらうときの指示の与え方の参考になります。

ただ気をつけなければならないのは、あまりに高度かつ複雑なものを作ってしまうと、メンテナンスできる人がいなくなってしまうことです。

定型的な作業を手作業で行なっている方は、ぜひVBAの活用をご検討ください。

 

JIM ACCOUNTING(児島泰洋公認会計士・税理士事務所)
代表 児島泰洋
電話: 090-1811-5461
メール: yasuhiro.kojima@jimaccounting.com

お問い合わせは以下のフォームからも行うことができます。

エラー: コンタクトフォームが見つかりません。

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA