VBAを利用したツール作成の考え方とモジュール分割について

VBA

実際にツールを作成する際にはただ動けば良いというわけではなく、その後の改修のしやすさもとても重要なポイントです

わかりやすいコードは拡張性やメンテナンス性の向上にもつながります。

今回はツール作成の考え方やモジュールの分割方法についてご紹介していきます。

ツール作成の考え方

ただひたすらにコードを書くとどうしても後からメンテナンスのしにくいコードになってしまいます。

そんなことが無いように自身が実装したい機能を箇条書きにして処理を分別していくことから始めましょう。

前処理
  • ファイル読み込み
  • 不要シートの削除 etc
メイン
  • 計算
  • 検索
  • 書き込み
  • シート作成 etc
後処理
  • 色付け(セル、文字)
  • 幅、高さ etc

実装したい機能を上記に当てはめてどの処理をいつ行うかを明確にしていきます。

モジュールの分割(コンポーネント化)

実装する機能の大枠がイメージできたら次はモジュールの分割です。各処理をパーツごとに分割して実装します。

メイン処理の部分ではそれらを呼び出すだけにするのがおすすめです。そうすることで各処理をパーツごとに管理することができ、メンテナンス性や拡張性が格段に向上します。

VBAに限らず多くのプログラミング言語で重要な考え方になるのでしっかりと意識して作成しましょう。

必要であればFunctionプロシージャを作成して各処理内で呼び出せるようにしておくのも良いかもしれません。

また、メイン処理は長くなりやすいので、その場合はさらに機能を細分化させたりなどもしていきましょう。

分割したモジュールを呼び出す方法

実際にモジュールを分割してから各モジュールを呼び出して実行していきます。

別モジュールのプロシージャを呼び出すにはモジュール名とプロシージャ名を下記のように指定する必要があります。

sub parent()
    call モジュール名1.プロシージャ名
    call モジュール名2.プロシージャ名
    call モジュール名3.プロシージャ名
end sub

タイトルとURLをコピーしました