エクセルVBAの新規作成に役立つ汎用テンプレート

コウノ工房のコウノです。
新規でVBAコーディングをするときに便利な汎用テンプレートを紹介します。
VBAを毎日コーディングしている人を除けば、一度VBAを書く程度では書き方を忘れてしまうのが普通ですよね。新規でVBA開発をするときは、過去にコーディングしたVBAをコピーして新規開発をするケースが多いと思います。ただ、コピー新規による開発は、必要・不要なロジックを見極めるのが大変で意外と効率的でないこともあります。
今回は、私がVBAを新規でコーディングするときに使っているテンプレートを公開します。どんなVBA開発でも必ず書かなければならいことをまとめた最低限のテンプレートです。このテンプレートをベースに必要な処理を肉付けするのが、生産性の高いコーディングだと考えています。
なお、EXCELやAccessによるVBA開発に興味がある、開発代行を依頼したいというかたはお悩み相談を承ります。以下のリンクを参照ください
\自社にノウハウが貯まる業務代行/「パソコン業務・情シス代行」を詳しく読む
VBA汎用テンプレのサンプルコード
VBA開発をするときは、新規プロジェクトの標準モジュールに以下のコードを貼り付けます。コメントを読むだけで処理内容が理解できるように心がけて書くことが大切です。
モジュールの冒頭コメントは必ず書く
VBAは手軽にコーディングできる反面、時間が経つと自分でも他人でも意図が分からなくなるのが一番の事故ポイントです。そこで私は、モジュールの先頭に冒頭コメントを必ず書いています。プログラムを読まなくても全体像が理解できるように、冒頭に以下の内容を書きます。
- マクロ名/作成者/作成日/目的・内容/更新履歴
関数を作るときも必ず書く
VBAでFunction(関数)を作る場合、「値を返すこと」が主目的になります。そのため、「ブラックボックス(何を入れたら、何が返ってくるか)」を明確にする記述とコメントが重要です。
例えば、「定価と数量を受け取って、税込の合計金額を返す」関数を作る場合の実装例です。
まとめ
汎用テンプレートは、作成するマクロのパターンが決まっていれば処理を加えてもよいと思います(印刷処理は必須など)。ただ、私はテンプレートは最低限の記述にとどめて、処理はモジュールとして別管理しておくほうが、無駄な処理をなくすことができるので生産性が高いと考えています。現在も日々、VBA開発をしていますので、新たな発見があれば、この記事を更新したいと思います。

