スポンサーリンク

Excel VBA(マクロ)は一気にプログラミングする方が効率が良い


静岡県三島市の税理士、松井元(@hajime_matsui)です。
こんにちは!

Excel でマクロ(VBA)込みのツールを作るときには、一気にプログラミングする方が効率的だと感じています。

可能であれば、他のことを中断して没頭するのがベストかと。

プログラミング

スポンサーリンク

1、Excel VBA は一気にプログラミングする方が効率が良い

作るツールによっては、それなりのプログラミングコードの量になります。

2つのやり方があります ↓

①他のことを中断して一気に作り上げる
②隙間時間を使って徐々に作り上げる

①他のことを中断して一気に作り上げる

一日 8時間以上の時間をかけて、何日間か没頭して一気に作り上げる方法です。

税理士としての会計・税務関係の仕事はこの数日間はやらないことになります。

②隙間時間を使って徐々に作り上げる

こちらは、毎日あるいは数日置きに、一日1〜2時間程度の時間をかけて、通常の仕事の合間に作るやり方になります。

チリも積もればで、 1ヶ月くらいかけて1つのツールを完成させることもあります。

一気にプログラミングした方が効率的な理由

さて、なぜ一気にやってしまった方が良いのか? 理由を書いてみます。

思考が中断しない

税理士業とプログラミングは頭の使い方が全然違います

隙間時間でプログラミングやると、頭の切り替えに時間がかかると感じています。

プログラミングの作業に着手して徐々に頭ができ上がっていく感覚があるからです。

細かい会計数字のチェックを長時間やった後にプログラミングの発想をしようとすると、どうしてもしばらくは調子が上がらないものです。

頭の切り替えをしなくても良い状態が理想的です。

長時間プログラミングに没頭できれば、その間は頭の切り替えをする必要がありません。

プログラミング脳をキープできます。

すぐに思い出せる

隙間時間でやっていると、前にどこまで作業していたか思い出すのに時間がかかります。

また、コードの中でどういう理由で書いたのか忘れてしまうこともあったりします。

一気にやってしまえばそのようなことはありませんので、余計な時間のロスを省けます。

2、効率的にプログラミングするためにできること

さて、プログラミングに没頭できた方が良いことは間違いありませんが、常にそのようにできるわけではありません。

なぜかと言えば、私の仕事は税理士だからです。

本来の業務である税理士業は必ずやらなければならないことです。

そのような環境下で、効率的にプログラミングするための工夫を書いてみます。

申告後・月初に集中投下

税理士業の特徴として、法人の申告期限である月末が近くなるとドタバタするというのがあります。

その時期はなかなか時間を裂けません。

しかし、逆に言えば

月末の申告が終わってからの期間(27〜31日くらいまで)と、翌月初(1〜5日くらいまで)は比較的時間を取りやすいです。

そこにプログラミングに特化した日を数日間作ることがあります。

その数日間で片付けられればそれが一番です。

隙間時間を使う場合はメモを残す

何だかんだ隙間時間を使うことは多いです。それは仕方ありません。

前にどこまで作業をしたか、Evernote にメモを残すようにしています。

それでも細かい部分を思い出すのには時間かかったりしますが、忘れ去ることはありません。

VBA コードの中にコメントを残す

VBA コードの中に、何をやっている部分か、後から見て分かるようにできるだけ多くのコメントを残した方が良いです。

VBA は最初に「’」を記述することで、その行をコメントアウト(プログラミングの命令から除外)できます。

コメントアウトした行は緑色で表示されます。

VBAのコメントアウト

こうしておくことで、どこで何を何のためにやっていたか思考をたどりながら思い出せます。

以下のようなコメントが考えられます。

●定義した変数の目的を書く
●これから行う操作の内容と目的を書く
●IF 文で何をやっているかを書く
●For 文で何をやっているかを書く
●Select Case 文で何をやっているかを書く

3、まとめ

専属的にプログラミングをやっている人であれば頭を切り替える必要が無いので、

今回お話しした効率のこととか考えなくて良いのかも知れません。

私のように「税理士 + プログラマー」という具合に本来の業務とプログラミングを両方やっている人間にとっては

プログラミングへの時間の当て方によって効率の良し悪しが出てきます。

編集後記

昨日(7/1)は午後から新しく会計ソフトを使うお客様のところに行き、インストールなどの設定をしてきました。

また、某クローズド ASP からアフィリエイトリンク掲載のご相談を頂き、対応させて頂くことにしました。

クローズド ASP からご連絡頂くのは初めてなので、貴重な経験をさせて頂きます。