Excel VBA開発を高速化する「汎用プロシージャ」という考え方― 私が800件以上のVBA開発を一人で回している理由
- yuji fukami
- 2 日前
- 読了時間: 4分

はじめに
いきなり個人ごとであるが、そろそろココナラの販売実績が800件に達する。ココナラ以外外の直接依頼も合わせたら、まあ800件をゆうに超えるので、まあそれらそろそろということで今回の記事をまとめておきます。

↓ココナラプロフィール
Excel VBAの開発について、最近はAIコーディングやバイブコーディングといった言葉をよく耳にするようになりました。
AIにコードを書かせて開発を進める、という方法です。
もちろんそれも一つの方法ですが、実際のVBA開発の現場では、もっと根本的な効率化の方法があります。
それが
「徹底した部品化」
という考え方です。
この記事では、私が実際に行っているVBA開発を高速化するための開発手法について紹介します。
VBA開発は「同じ処理」の繰り返し
Excel VBAの開発をしていると、必ずと言っていいほど登場する処理があります。
例えば次のようなものです。
ファイル選択ダイアログ
フォルダ選択
セル検索
シート操作
配列処理
文字列処理
データ整形
ログ出力
エラー処理
こういった処理はどの案件でも何度も登場します。
しかし、多くの開発者は
必要になるたびにコードを書く
という方法で開発しています。
これは一見普通のようですが、実は 開発速度が上がらない原因になります。
プロのVBA開発は「部品」を作る
私が行っている方法はシンプルです。
よく使う処理を汎用プロシージャとして作り、
部品として使い回すという方法です。
つまり、
処理を書くのではなく処理を呼び出すだけにします。
ちなみに汎用プロシージャはブログにて一部を公開しています。
下記のブログのトップページから参照してみてください。
私のVBA開発環境
現在私が管理している汎用プロシージャは約1800個以上あります。
その中で、日常的によく使うものは約500個ほどですが、これらの部品はすべて整理して管理しています。
汎用プロシージャの管理方法
汎用プロシージャはExcelアドイン(xlam)として管理しています。
これによりどのExcelブックからでもすぐに利用することができます。
開発中のマクロブックからアドインを参照することで、必要な処理を呼び出すだけで利用できます。
実際の開発の流れ
開発の流れは次のようになります。
開発時
マクロ付きブック(xlsm)↓アドイン参照↓汎用プロシージャを呼び出す納品時
使用しているコードだけ↓自動コピー↓マクロブックに組み込みこの仕組みにより、
開発環境と納品環境を分けて管理することができます。

部品化の大きなメリット
この方法の最大のメリットはコードのほとんどが既存部品になること
です。
実際に開発したマクロブックのコードは80〜90%が汎用プロシージャの呼び出し
になります。
つまり
ほとんどのコードが自分がすでに何度も使っている処理になります。
コードが1万行でも怖くない
私が対応するVBAの案件では
4,000行
5,000行
10,000行
といった大きなコードになることも珍しくありません。
しかし、その多くが見慣れた処理で構成されているため
コード理解が速い
修正が速い
保守が簡単
というメリットがあります。
VBA開発の高速化はAIではない
最近はAIによるコーディングが注目されていますが、
VBA開発において本当に重要と考えているのが、AIではなく開発資産です。
長年の開発で蓄積された
汎用プロシージャ
コード部品
開発ルール
これらがあることで、
VBA開発は圧倒的に高速化することができます。
まとめ
VBA開発を高速化する本質は「部品化」です。
よく使う処理を汎用プロシージャとして蓄積し、再利用することで
開発速度
コード品質
保守性
すべてを高めることができます。
これは一朝一夕で作れるものではありませんが、
長年の開発の中で積み上げてきたVBA開発ノウハウの一つです。
もし
Excel VBAの開発
業務の自動化
Excelツールの作成
などをご検討の方は、お気軽にご相談ください。

