Excel VBA と RPA(BizRobo!)の使い分け

公開日:2026年10月5日 執筆:Takuya カテゴリ:業務選定・設計

Excel の中で完結する作業は VBA、複数のシステムをまたぐ作業は RPA、という基本の考え方と、両方を組み合わせるときの役割分担の例を紹介します。

それぞれの得意分野

Excel VBA と RPA は、どちらも作業を自動化する道具ですが、得意な分野が違います。どちらか一方にこだわるより、作業の性質に合わせて選ぶ・組み合わせる方が、作りやすく、止まりにくい仕組みになります。

  • Excel VBA:Excel の中での集計・加工・帳票作成が得意。大量のデータを速く処理できる。Excel が入ったパソコンがあればすぐ使える
  • RPA(BizRobo!):Web システムや複数のアプリをまたいだ操作が得意。サーバーでのスケジュール実行や、実行状況の一元管理ができる

判断の目安

迷ったときは、次のように考えると整理しやすくなります。

  • 作業が Excel の中だけで完結する → VBA
  • Web システムへの入力やダウンロードが中心 → RPA
  • 決まった時刻に、人がいなくても動かしたい → RPA(サーバーでのスケジュール実行)
  • データの加工が複雑で、件数が多い → 加工は VBA、システム操作は RPA

組み合わせの例

実際の業務では、両方を組み合わせることがよくあります。たとえば、毎朝の売上報告の作業を次のように分担できます。

[組み合わせの例:毎朝の売上報告]
1. RPA:基幹システムにログインし、前日の売上 CSV をダウンロードして共有フォルダに保存
2. VBA:CSV を読み込み、店舗別・商品別に集計して報告用の Excel を作成
3. RPA:作成された報告書をメールで関係者に送信、または社内ポータルに登録

組み合わせるときの注意

受け渡しのファイルの形(場所・名前・列の構成)を、両方の担当者で取り決めておくことが大切です。VBA の担当者が列を1つ追加しただけで、RPA 側のロボットが止まる、ということが起きます。また、RPA から Excel のマクロを動かす場合(DA を使うなど)は、マクロの中でメッセージボックスを出すと処理が止まってしまうため、ロボットから呼ぶマクロは、画面への表示を出さない作りにしておきます。

保守する人を考えて選ぶ

技術的にどちらでも作れる場合は、作ったあとに保守する人が慣れている方を選ぶのが現実的です。VBA が得意な人が多い職場なら VBA で、RPA の運用体制が整っている職場なら RPA で、という判断も十分に合理的です。当サイトの運営者は Excel VBA の解説サイトも運営しているので、あわせて参考にしてください。

※BizRobo! は RPA テクノロジーズ株式会社の製品です。本サイトは同社とは関係のない個人の解説サイトです。画面や機能の名称は、製品のバージョンによって異なる場合があります。

ほかの記事