top of page

​タグ一覧

配列処理(73)

階層化フォーム(33)

ファイル操作(28)

開発事例(22)

シート・セル操作(19)

図形操作(15)

ユーザーフォーム(10)

コード自動生成(10)

設計思想(10)

講座実施報告(10)

文字列操作(8)

開発効率化(6)

数学(6)

GAS(5)

アニメーション(5)

技術解説(4)

イミディエイトウィンドウ(4)

Googleスプレッドシート(4)

副業(4)

クリップボード(4)

条件付き書式(4)

その他(4)

OneDrive(3)

イベントプロシージャ(3)

ココナラ(3)

小説(3)

HTML(3)

JavaScript(3)

Enum(2)

PDF(2)

フリーランス(2)

リスキリング(2)

Outlook(2)

介護(2)

Discord(2)

シフト表(2)

LookerStudio(2)

日報(2)

カレンダー(2)

罫線(2)

パズル(2)

小ネタ(2)

コード解説(2)

クラスモジュール(2)

Antigravity(2)

ステータスバー(1)

コード解析(1)

バックアップ(1)

可変長引数配列(1)

ブック処理(1)

スクレイピング(1)

スプレッドシート(1)

coconala(1)

リボン登録マクロ(1)

QRコード(1)

実行予約(1)

給与計算(1)

VBA不使用(1)

リボン(1)

超勉強会(1)

スピログラフ(1)

図名描写(1)

連想配列(1)

溶接ロボット(1)

保育士(1)

楽天市場(1)

経理(1)

医療(1)

文書作成(1)

発注書(1)

ショートカット(1)

WebAPI(1)

色操作(1)

スーパー開発ショートカット(1)

ライブラリ処理(1)

放課後等デイサービス(1)

児童福祉支援(1)

学校(1)

UI(1)

CAD(1)

カーソル操作(1)

チェックボックス(1)

Webアプリ(1)

PowerShell(1)

Excel VBA開発を高速化する「汎用プロシージャ」という考え方― 私が800件以上のVBA開発を一人で回している理由

Excel VBA開発を高速化する「汎用プロシージャ」という考え方― 私が800件以上のVBA開発を一人で回している理由

はじめに

いきなり個人ごとであるが、そろそろココナラの販売実績が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ツールの作成

などをご検討の方は、お気軽にご相談ください。

Excel VBAによる業務自動化・ツール開発をご検討の方へ

​"脱Excel"の前に、現状のExcelの潜在能力を120%発揮してみませんか?

Softex-Celware

​インボイス登録番号:T5810983887134

  • Facebook
  • Twitter
  • YouTube

©2023 softex-celware。Wix.com で作成されました。

bottom of page