VBA・関数・Power Query・GASのどれを使うべき?

Excel自動化で迷いやすいVBA、関数、Power Query、Google Apps Scriptの役割を、実際の作業から比較します。

自動化の相談で、最初から「VBAで作ってください」と決める必要はありません。方法を先に固定すると、簡単な作業を複雑にしたり、使う環境に合わない仕組みになったりします。

入力、処理、出力、実行場所を整理し、それぞれに向く方法を組み合わせるのが基本です。

先に結論

セルの計算は関数、取込と整形はPower Query、Excelの操作や帳票処理はVBA、Googleサービス間の連携はGASが目安です。実務では、一つだけでなく組み合わせることがあります。

この作業は自動化候補です

次の項目が多いほど、手作業をそのまま続けるより、自動化の効果が出やすくなります。

  • 数式で済む計算と、クリック操作が混ざっている
  • 複数CSVを整形してから帳票を作る
  • Windows以外の利用者がいる
  • GoogleフォームやGmailと連携する
  • ブラウザだけで実行したい
  • 組織のマクロ制限がある

作業を三つに分けて考える

  1. 1
    計算か操作かを分ける

    セルの値を求めるのか、ファイル操作をするのかを区別します。

  2. 2
    データの場所を決める

    Excel、ローカルフォルダ、Google Driveなどを確認します。

  3. 3
    実行者とタイミングを決める

    ボタン、更新、時刻、メール受信などを整理します。

向いている方法の考え方

関数は結果がセル上で見え、少量の計算には分かりやすい方法です。Power Queryは取込・整形手順を保存して更新できます。VBAはExcel内の操作、ファイル保存、印刷などをまとめやすい一方、実行環境とセキュリティを確認する必要があります。

GASはGoogle Workspace上のサービスを連携できます。Microsoft 365環境ではOffice Scriptsという選択肢もあるため、ブラウザ運用や組織の契約条件を含めて提案を受けるとよいでしょう。

候補向いている場面注意点
関数計算・参照・判定をセル内で完結式が増えすぎると保守しにくい
Power Query取込、整形、結合、更新画面操作や帳票出力は別手段
VBAExcel操作、ファイル、印刷、帳票デスクトップ環境と安全性を確認
GASSheets、Gmail、Drive、Forms連携Google環境と権限管理が前提
Office ScriptsExcelの定型操作をクラウド側でも共有利用条件・対応環境を確認

相談前にそろえるもの

完成形を細かく設計する必要はありません。今の作業が再現できる材料をそろえる方が重要です。

  • 現在の作業手順
  • 利用者のOSとExcelの種類
  • データの保存場所
  • ボタン実行か自動実行か
  • 社内のマクロ・クラウド利用制限

専門家へ頼んだ方がよい目安

  • 方法の違いを自社で判断できない
  • Excelとメールやクラウドをまたぐ
  • 複数環境で使う必要がある
  • 将来の変更や保守も含めて設計したい

よくある失敗

  • 有名な方法だけで決める
  • 作る人の得意技だけで方法を選ぶ
  • Excel for the webでVBAが動く前提にする
  • 処理速度だけで保守性を見ない

よくある疑問

VBAは古いので使わない方がよいですか?

既存Excelやデスクトップ操作では今も有力です。ただし、ブラウザ・共同編集・組織の制限が重要なら別の方法と比較します。

Power Queryでボタン操作もできますか?

主にデータの取込と整形に向きます。印刷、ファイルごとの保存、画面操作などはVBA等と組み合わせることがあります。

GASでExcelを操作できますか?

GASは主にGoogle Workspace上で使います。Excelファイルを扱うことはあっても、VBAの代わりとしてそのままExcelデスクトップを操作するものではありません。