SkillStack Lab運営者の「スタック」です。
Excelで毎月同じ集計や転記を繰り返し、「ChatGPTやCopilotを使えば、もっと簡単に自動化できないかな」と考えていませんか。
現在は、関数やVBAをゼロから書けなくても、生成AIへやりたいことを説明すれば、数式やコードのたたき台を作ってもらえるようになりました。
さらにMicrosoftのCopilot in Excelでは、自然言語で指示するだけで、数式だけでなくセル、シート、グラフ、ピボットテーブルなどをExcel上で直接編集できます。
ただし、ここで一つ注意があります。
AIを使えば、すべてのExcel作業を自動化できるわけではありません。毎月同じデータを結合するならPower Query、セルや帳票を決まった手順で操作するならVBA、その場で分析や表を作りたいならCopilotというように、仕事に合う方法を選ぶことが重要です。
この記事では、元情シス・現役管理部門長としてExcel、VBA、Power Query、ChatGPTなどを業務で使ってきた経験から、ExcelをAIで自動化する具体的な手順と、安全に実務へ導入するための考え方を解説します。
- ExcelをAIで自動化する基本的な考え方
- ChatGPTでVBAや関数を作る具体的な手順
- Copilot in Excelで現在できること
- VBA・Power Query・Copilotの使い分け
- AIが作ったコードでエラーが出たときの直し方
- 会社のExcelデータをAIへ渡すときの注意点
結論|ExcelのAI自動化は「AIに作らせて人が確認」が基本
ExcelのAI自動化で最初に覚えておきたいのは、生成AIへ仕事を丸ごと任せるのではなく、自動化の設計・数式・コード作成をAIに手伝ってもらうという考え方です。
例えば、次のように使い分けます。
| やりたいこと | 最初の候補 | AIの役割 |
|---|---|---|
| VLOOKUPやXLOOKUPの式を作りたい | Excel関数 | 必要な数式を考えてもらう |
| その場でデータを分析・編集したい | Copilot in Excel | 自然言語からExcelを直接操作する |
| 毎月同じCSVを結合・整形したい | Power Query | 処理手順やMコードの作成を補助してもらう |
| シート作成や帳票転記を繰り返したい | VBA | VBAコードのたたき台を作ってもらう |
| 大量のCSVやExcelを処理したい | Python | 処理コードやエラー調査を補助してもらう |
| メールやWebなどExcel外も自動化したい | Power Automate | フロー設計や条件整理を補助してもらう |
つまり、ChatGPTはVBAの代わり、CopilotはPower Queryの代わりという関係ではありません。
AIは「どう作るか」を助けてくれる存在で、実際に繰り返し処理を担当する仕組みは仕事内容から選びます。
自分の仕事にVBA・Power Query・Pythonなどのどれが合うか先に確認したい場合は、Excel自動化の例7選と手段の使い分けも参考にしてください。
ChatGPTでExcelのVBAマクロを作る手順
生成AIを使ったExcel自動化で取り組みやすいのが、VBAコードの作成です。
VBAの構文を最初から全部暗記しなくても、「どのシートの、どのデータを、どう処理したいか」を説明できれば、ChatGPTなどにコードのたたき台を作ってもらえます。

1.自動化したい作業を文章にする
まず、普段手作業で行っている手順を書き出します。
例えば、次のような業務です。
- 「売上データ」シートを開く
- B列の店舗コードが「001」の行だけ抽出する
- 抽出した行を「東京店」シートへ転記する
- 転記前に「東京店」シートの2行目以降を削除する
- 処理後に完了メッセージを表示する
このように人間が読んでも手順が分かる状態にしてからAIへ渡します。
2.ChatGPTへ条件を含めて依頼する
プロンプトには、最低でも「入力」「条件」「処理」「出力」「禁止事項」を入れてください。
あなたはExcel VBAに詳しいエンジニアです。
次の作業を自動化するVBAを作成してください。
【ブック】
現在開いているブックを対象にします。
【元データ】
シート名:売上データ
1行目は見出しです。
B列に店舗コードがあります。
【処理】
1. 「東京店」シートの2行目以降を削除
2. 「売上データ」シートでB列が「001」の行だけ抽出
3. A列からH列までを「東京店」シートの2行目以降へ転記
4. 処理終了後に「転記が完了しました」と表示
【条件】
・1行目の見出しは削除しない
・元データは変更しない
・対象データが0件でもエラーにならないようにする
・処理中にエラーが出た場合は内容を表示する
コードの後に、初心者向けに各処理の意味も説明してください。
「転記するマクロを作って」だけでもコードは出ますが、条件が足りないほどAI側の推測が増えます。
削除や上書きを伴うマクロでは、特に具体的に指示してください。

3.本番ファイルではなくコピーでテストする
AIが作ったコードを、そのまま重要な本番ファイルで実行するのは避けてください。
最初は元ファイルを複製し、数行のダミーデータで動作確認します。
- 削除してはいけない行が消えていないか
- 転記先の列がずれていないか
- 0件の場合でも止まらないか
- 空白セルやエラー値があっても動くか
- 処理を2回実行してもデータが重複しないか
問題がなければデータ量を増やし、最後に本番運用へ移します。
VBAの知識はゼロでもいい?最低限の確認力は必要
「AIがコードを書いてくれるなら、VBAは一切知らなくてもよいのでは?」と思うかもしれません。
コードをゼロから書くための文法暗記は以前ほど重要ではなくなりました。
ただし、AIが作ったコードを安全に使うための最低限の理解は必要です。
| 覚えておきたいこと | 理由 |
|---|---|
| WorkbookとWorksheet | 別ブック・別シートを誤って変更するのを防ぐ |
| Range・Cells | どのセルを操作しているか確認する |
| 最終行の取得 | データ量が変わっても処理できるようにする |
| 変数 | コードの中で何を保持しているか理解する |
| エラー処理 | 途中停止した場合の影響を抑える |
| Delete・Clear・Save | 削除・上書きを伴う危険な処理を見つける |
「自分で全部書ける」必要はありません。
少なくとも「このコードはどのシートを変更し、何を削除し、どこへ保存するのか」を確認できる状態を目指してください。
すぐ試せる実務マクロの例を見たい方は、Excel便利マクロ8選と安全な使い方も参考にしてください。
私の実務ではAIだけでなくPower Queryが大きく効いた
AIが便利になっても、私はすべてのExcel作業をVBAや生成AIへ任せているわけではありません。
特に毎月同じ形式のデータを集める仕事では、Power Queryが非常に有効でした。
スタック私の業務では、10以上の部署から届くファイルを毎月集計する作業に以前は約4時間かかっていました。Power Queryで取得・結合・整形の手順を作ってからは、元ファイルを揃えて更新するだけで約5分まで短縮できています。
ここで重要なのは、「AIを使ったから4時間が5分になった」のではないことです。
繰り返し処理そのものはPower Queryへ任せ、生成AIは数式、データ整形方法、エラー原因を調べる補助として使います。
また、Excel関数の組み立てやデータクレンジングでも、以前は数時間かけて調べていた内容を、AIを使って約10分でたたき台まで作れるケースがあります。
2026年のCopilot in Excelは直接ブックを編集できる
ExcelとAIを組み合わせるなら、現在のCopilot in Excelも確認しておきましょう。
以前は数式生成や分析補助というイメージが強かったCopilotですが、現在はExcelワークブックそのものを自然言語から編集できる機能へ進化しています。
Microsoft公式では、現在のCopilot in Excelに「編集」「計画」「チャット」の3つのモードがあります。
| モード | 主な使い方 |
|---|---|
| 編集 | Copilotがワークブックを直接変更する |
| 計画 | 実行前に処理手順を作らせて確認する |
| チャット | ブックを変更せず質問・分析を行う |
編集モードでは、例えば次の処理を依頼できます。
- セルや範囲の値を変更する
- シートを追加・変更する
- 数式を作成する
- 書式や条件付き書式を設定する
- データを並べ替え・フィルターする
- グラフやピボットテーブルを作成する
- 複数ステップのデータ整形やレポート作成を進める
重要なExcelファイルでは、いきなり編集させるのではなく、計画モードで「何を変更するつもりなのか」を確認してから進める方法もあります。
Copilot in Excelの現在の編集・計画・チャットモードや利用条件は、Excel Agent Modeと現在のCopilot in Excelを解説した記事で詳しく整理しています。
ChatGPT・Copilot・Power Query・VBAをどう使い分ける?
ExcelのAI自動化では、ツール同士を競わせるよりも役割を分ける方が分かりやすいです。
| 方法 | 特に向いていること | 注意点 |
|---|---|---|
| ChatGPTなどの生成AI | 数式・VBA・Power Query・Pythonの作成補助、エラー調査 | 出力されたコードを人が検証する |
| Copilot in Excel | その場での表編集、分析、数式、ピボット、グラフ作成 | 利用できる機能は契約・組織設定などで異なる |
| Power Query | CSV・Excelの取得、結合、整形を繰り返す | Excel画面の細かな操作には向かない |
| VBA | セル・シート・帳票・ファイルなどの定型操作 | 保守・マクロセキュリティ・デスクトップ依存に注意 |
| Python | 大量データ、複数ファイル、APIなどExcel外の処理 | 環境構築・配布・保守まで考える必要がある |
例えば毎月10個のCSVを結合するだけなのに、AIへ毎回ファイルを渡して「結合してください」とお願いする運用はおすすめしません。
一度Power Queryで仕組みを作り、翌月以降は更新だけにした方が再現性があります。
反対に、「この表から経営会議用のグラフと分析コメントを作りたい」といった、その場で考えながら進める仕事ではCopilotや生成AIの強みを活かせます。
AIが作ったVBAでエラーが出たときの直し方
AIへVBAを書かせても、一度で正しく動くとは限りません。
シート名、データ配置、Excelのバージョン、実際のデータ型など、AIが知らない条件があるからです。


エラー番号だけでなく状況もAIへ伝える
例えば「実行時エラー9が出ました」だけではなく、次の情報も一緒に渡します。
- エラーメッセージ全文
- エラーになった行
- 使用しているコード全体
- 実際のシート名
- データが入っている列
- 本来どのような結果になってほしいか
依頼例は次のようになります。
次のVBAを実行すると
「実行時エラー '9': インデックスが有効範囲にありません」
と表示されます。
デバッグすると
Worksheets("売上")
の行が黄色になります。
実際のシート名は
「2026年売上」です。
エラーの原因を説明し、
修正版のコードを全文で出してください。
それ以外の処理内容は変更しないでください。
特に最後の「それ以外は変更しない」という一文は、AIが必要以上にコード全体を書き換えるのを防ぐためにも役立ちます。
よくあるエラー原因を先に確認する
| 症状 | よく確認するポイント |
|---|---|
| 実行時エラー9 | ブック名・シート名の不一致 |
| 型が一致しません | 数値・文字列・日付・エラー値の混在 |
| オブジェクト変数のエラー | Workbook・Worksheet・Rangeが正しくSetされているか |
| 想定外の行まで処理される | 最終行の取得方法 |
| 2回目の実行で重複する | 出力先の初期化・既存データ確認 |
ExcelをAIで自動化するときのセキュリティ対策
Excelには売上、給与、顧客情報、社員情報など、外部へ出してはいけないデータが入っていることがあります。
AIへ質問するときは、「便利だから」という理由だけで実ファイルをそのままアップロードしないでください。


コード作成だけなら実データを渡さなくてもよい
VBAや関数を作ってもらうだけなら、実際の顧客名や金額を渡す必要はありません。
例えば、次のように構造だけを伝えればコードは作れます。
- A列:社員番号
- B列:部署
- C列:勤務日
- D列:勤務時間
社員番号も「0001」「0002」などのダミーデータへ置き換えれば、業務構造をAIへ説明できます。
ChatGPTは個人向けとBusinessでデータ利用が異なる
個人向けChatGPTでは、設定によって会話内容がモデル改善へ利用される場合があります。利用者はData Controlsから学習利用をオフにできます。
一方、ChatGPT Business・EnterpriseやAPIでは、入力・出力をモデル学習へデフォルトでは利用しないとOpenAIが案内しています。
ただし、学習に使われないことと、会社の機密情報を自由にアップロードしてよいことは別です。
会社でExcelファイルをAIへ渡す場合は、自社の生成AI利用ルールを最優先してください。個人情報、顧客情報、未公開財務情報などは、会社が許可した環境・用途かを確認してから扱いましょう。
OpenAIの現在のデータ利用方針は、OpenAI公式のデータ利用ポリシーでも確認できます。
ExcelのAI自動化は何から始めればいい?
「ChatGPT、Copilot、VBA、Power Queryと選択肢が増えて、結局どれを勉強すればよいのか分からない」という方もいるでしょう。
私は、次の順番で十分だと考えています。
- 現在の手作業を1つ選ぶ:毎日・毎週・毎月繰り返している仕事を探す
- Excel標準機能で解決できないか確認:関数・テーブル・ピボットを検討する
- データ取得・整形ならPower Query:毎月同じ処理を手順として残す
- Excel操作ならVBA:AIにコード作成を補助してもらう
- その場の分析や編集ならCopilot:自然言語からブックを操作する
- Excelを超えたら別手段を検討:Power Automate・Python・SaaSへ広げる
いきなり「VBAを全部勉強する」「Pythonを習得する」と大きな目標を設定する必要はありません。
まず1つの業務を改善できれば、次に必要なスキルが見えてきます。
独学と動画講座はどちらがいい?
ChatGPTへ質問しながら独学する方法でも、Excel自動化は十分始められます。
ただし、毎回検索する場所が変わる、同じエラーで何度も止まる、Power QueryとVBAのどちらを使えばよいか判断できないという場合は、体系的な教材を使う方法もあります。
私はこれまでUdemyでExcel、Power Query、VBA、Python、生成AIなど15〜20本前後の講座を利用してきましたが、すべてを最初から最後まで完走しているわけではありません。
最後まで完了したのは6割程度で、残りは仕事で必要な部分だけを「辞書」のように確認しています。
Excelの基礎、関数、Power Query、VBAをどの順番で学ぶか迷っている方は、UdemyのExcelおすすめ講座を目的別に比較した記事で整理しています。
ExcelのAI自動化に関するよくある質問
まとめ|AIにExcelを丸投げせず、仕組み作りに使う
生成AIによって、Excel自動化を始めるハードルは大きく下がりました。
- 関数が分からなければAIに数式を作ってもらう
- VBAが必要ならAIにコードのたたき台を作ってもらう
- エラーが出たらメッセージと状況をAIへ伝える
- その場のExcel編集・分析にはCopilotも比較する
- 毎月のデータ取得・結合・整形ならPower Queryを使う
- AIが作った処理は本番前に人がテストする
- 機密情報は会社のAI利用ルールに従って扱う
AI時代に大切なのは、VBAのコードを暗記することでも、何でもChatGPTへ任せることでもありません。
目の前の仕事を分解し、「この作業なら関数」「ここはPower Query」「この操作だけVBA」「その場の分析はCopilot」というように、最も簡単で再現しやすい方法を選べることです。
ExcelにはAI以外にも、自動化へ使える方法がいくつもあります。
VBA・Power Query・Power Automate・Python・AIまで含め、自分の業務にどの方法が合うか比較したい方は次の記事で整理しています。
\ 業務に合う方法を先に選ぶ /










