「エクセルの関数がわからない」「マクロを組みたいけどプログラミングは無理」
そんな悩みを、生成AIが解決します。プロンプト(指示文)を送るだけで、複雑な関数やVBAコードを自動で作ってくれます。
この記事では、ExcelとAIを組み合わせた効率化の具体的な方法を、コピペで使えるプロンプト例とVBAコード例とともに紹介します。

AIとExcelを組み合わせる3つの方法
| 方法 | ツール | 向いている場面 |
|---|---|---|
| ChatGPTに聞く | ChatGPT(無料) | 関数を聞く・VBAコードを作成 |
| Copilotで直接操作 | Microsoft 365 Copilot(有料) | ExcelにAIが直接組み込まれて操作 |
| GeminiをGoogleスプレッドシートで使う | Gemini(一部有料) | Google Sheets内でAIを活用 |
まずはChatGPTを使う方法がコスト面でおすすめです。無料プランでも十分な機能を使えます。
【使い方1】エクセル関数を自動生成する
よくある関数の悩みをAIに解決してもらう
「エクセルで、A列に氏名、B列に点数が入っています。
C列に、点数が80以上なら「合格」、未満なら「不合格」と
表示する関数を教えてください。」
▶ 返答例:=IF(B2>=80,"合格","不合格")
「E列にある日付(YYYY/MM/DD形式)から、
F列に曜日を日本語(月・火・水…)で表示する関数を教えてください。」
▶ 返答例:=TEXT(E2,"aaa")
「複数の条件でSUMIFSを使いたいです。
・D列が"東京"
・E列が2026年
という条件でF列の売上を合計する式を教えてください。」
実務でよく使う関数5種のプロンプト例
以下のプロンプトはそのままコピーしてChatGPTに貼り付けられます。列名・シート名を実際の環境に合わせて書き換えてください。
① VLOOKUP → XLOOKUP への書き換え
「以下のVLOOKUP式をXLOOKUPに書き換えてください。Microsoft 365環境です。
=VLOOKUP(A2,Sheet2!$A:$C,3,FALSE)
エラー時は空白を返すようにしてください。」
② 複数条件のSUMIFS / COUNTIFSを生成
「A列に担当者名、B列に商品カテゴリ、C列に売上金額が入っています。
担当者が"田中"かつ商品カテゴリが"食品"の場合のC列合計を求めるSUMIFS式と、
同じ条件の件数を求めるCOUNTIFS式を教えてください。」
③ IF + AND / OR の複合条件式
「B列の点数が70以上、かつC列の出席率が80%以上の場合に"合格"、
どちらか一方でも満たさない場合に"再試験"と表示するIF式を教えてください。
AND関数とOR関数の使い分けも説明してください。」
④ エラー(#N/A・#REF!)を修正する
「=VLOOKUP(A2,B:D,2,FALSE) を入力したら #N/A エラーが出ました。
A列の値はB列に必ず存在するはずです。原因として考えられるものと、
修正方法を教えてください。」
⑤ 逆引き:「このセルで何をしているか説明して」
「以下のExcel関数が何をしているのか、わかりやすく日本語で説明してください。
=IFERROR(INDEX(Sheet2!$B:$B,MATCH(A2,Sheet2!$A:$A,0)),"該当なし")」
このように、既存の式を貼り付けて「説明して」と依頼するだけで、AIが処理内容をわかりやすく解説してくれます。引き継いだファイルの解読にも役立ちます。

【使い方2】VBA・マクロを自動で作成する
プログラミング知識ゼロでも、AIに指示すれば動くコードを作ってくれます。
例:毎月の集計を自動化するマクロ
「エクセルVBAで以下の処理を行うマクロを作ってください。
・Sheet1のA列〜E列のデータを読み込む
・D列(売上)の合計をSheet2のB2セルに書き込む
・B2セルを黄色で塗りつぶす
・完了したらメッセージボックスで「集計完了」と表示する」
実務3例のVBAプロンプト(コピペ使用可)
① 差異がある行に色をつける
「A列のデータをB列と照合して、一致しない行に赤色の背景色をつけるVBAを書いてください。
1行目はヘッダーなので除外してください。データは2行目から始まります。」
② 複数シートのデータを1枚にまとめる
「Sheet1、Sheet2、Sheet3のA列〜E列のデータを、
「集計」シートに縦に連結するVBAを書いてください。
各シートの1行目はヘッダーなので、2行目以降だけをコピーしてください。」
③ PDFとして保存する(ファイル名はセルの値を使用)
「アクティブシートをPDFとして保存するVBAを書いてください。
ファイル名はA1セルの値を使い、デスクトップに保存するようにしてください。
保存完了後にメッセージボックスでファイル名を表示してください。」
ChatGPTが作ったVBAをExcelに貼り付ける手順
- ExcelでAlt + F11を押してVBAエディター(Visual Basic for Applications)を開く
- メニューから「挿入」→「標準モジュール」をクリック
- 右側の白いエリアにAIが生成したコードをコピーして貼り付ける
- F5キー(またはメニューの「実行」)でマクロを実行する
- 動作確認後、Alt + F11で元のExcel画面に戻る
なお、VBAを使うにはExcelの「マクロを有効にする」設定が必要です。セキュリティ警告が出た場合は「コンテンツの有効化」をクリックしてください。
【使い方3】データ分析・グラフの説明文を作る
Excelのデータをコピーしてそのままチャットに貼り付けるだけで、AIが分析・コメント・異常値検出を行ってくれます。
「以下のデータをもとに、経営会議向けの売上分析コメントを書いてください。
・1月売上:120万円
・2月売上:98万円
・3月売上:145万円
・前年同期比:+12%
・主な要因:新製品Aの好調
300字以内、課題と次月の施策提案も含めてください。」
月次推移の傾向分析プロンプト
「売上データの月次推移を見て、傾向と改善案を3点教えてください。
データ:
4月:230万円、5月:210万円、6月:195万円、7月:180万円、
8月:220万円、9月:240万円、10月:260万円」
異常値の検出プロンプト
「以下のデータで異常値があれば指摘してください。理由と、異常値が発生する原因として考えられるものも教えてください。
データ:[Excelからコピーして貼り付け]」
グラフ説明文の自動生成プロンプト
「このグラフの説明文を100字で書いてください。社内資料に使う想定で、
わかりやすくポジティブな表現にしてください。
グラフの内容:[データや傾向を貼り付け]」
説明文のトーンは「経営会議向け」「資料添付用」「メール文面用」など用途を指定することで、使いやすい文体に調整できます。
【使い方4】Microsoft 365 Copilotで直接操作
Microsoft 365のサブスクリプションにCopilotアドオンを追加すると、ExcelにCopilotが直接組み込まれます。
できること:
- 「売上上位10件を抽出してグラフを作って」と話しかけるだけでデータ操作
- データのパターンや外れ値を自動で検出
- ピボットテーブルの提案
Copilotの料金と必要要件
Microsoft 365 Business Standard(月額1,874円/人)にMicrosoft 365 Copilotアドオン(月額約3,000円/人)を追加する必要があります。合計で月額約4,500〜5,000円/人が目安です。利用にはAzure Active Directory(Microsoft Entra ID)による組織アカウント管理が必要なため、主に法人・チームでの利用が前提となります。
Copilotを持っていない場合の代替手順
Copilotを契約していなくても、次の手順でほぼ同等の効果を得られます。
- ExcelのデータをCtrl+Cでコピーする
- ChatGPT(または他の生成AI)のチャット画面に貼り付ける
- 「このデータを分析して」「関数を生成して」などの指示を入力する
- AIの回答をコピーしてExcelに貼り戻す
関数生成・VBA作成・分析コメント作成はChatGPTで十分対応できます。Copilotは「Excelを直接操作してほしい」「会話しながらリアルタイムでデータを操作したい」というニーズに特化したツールです。
業務別・ExcelとAIの組み合わせ活用例
職種別に「よくあるExcel作業」と「AIへの指示例」をまとめました。そのままコピーしてChatGPTに貼り付けて使えます。
経理担当
- 月次費用集計:「A列に勘定科目、B列に金額が入っています。勘定科目ごとの合計金額を求めるSUMIF式と、前月のC列との差額を計算する式を教えてください。」
- 集計表自動作成:「勘定科目ごとの月別集計表を自動で作成するVBAを書いてください。Sheet1のデータをもとに、Sheet2に縦軸:勘定科目、横軸:月の集計表を出力してください。」
営業担当
- 顧客別売上ランキング:「A列に顧客名、B列に売上金額が入っています。別のシートにある顧客マスタ(D列:顧客ID、E列:担当者名)を参照して、C列に担当者名を表示するVLOOKUP式を教えてください。」
- 条件付き書式の自動設定:「商談進捗管理表のD列に”受注””提案中””失注”のいずれかが入っています。”受注”は緑、”提案中”は黄色、”失注”は赤に自動で色分けするVBAを書いてください。」
人事担当
- 残業時間の自動計算:「A列に出勤時刻、B列に退勤時刻が入っています。所定労働時間を8時間として、C列に残業時間を計算する式を教えてください。マイナスになる場合は0と表示してください。」
- 試用期間終了日の計算:「B列に入社日(YYYY/MM/DD形式)が入っています。試用期間を3か月として、C列に試用期間終了日を計算するDATE関数を教えてください。月末処理も考慮してください。」
マーケティング担当
- ROAS計算式:「A列に広告費(円)、B列に広告経由の売上(円)が入っています。C列にROAS(売上÷広告費×100)をパーセント表示する数式を教えてください。広告費が0の場合はエラーを防ぐ処理も入れてください。」
- 月別集計マクロ:「Googleアナリティクスからエクスポートしたデータ(A列:日付、B列:セッション数、C列:コンバージョン数)を月別に集計して、新しいシートに出力するVBAを書いてください。」
AIでExcelを活用するプロンプトのコツ
1. 具体的なセル番地を伝える
✗ 「売上を合計して」
○ 「B2:B100の範囲を合計するSUM関数を教えてください」
2. データの形式を説明する
○ 「A列に日付(YYYY/MM/DD形式)、B列に商品名、C列に数量、D列に単価が入っています。
E列に金額(数量×単価)を計算する関数を教えてください。」
3. エラーが出たらそのままAIに相談する
○ 「=VLOOKUP(A2,C:D,2,FALSE) を入力したら #N/A エラーが出ました。原因と修正方法を教えてください。」
4. シート名・列名・セル番地を明示する
「Sheet1のA列」「B2セル」のように具体的な場所を伝えると、AIが的確なコードを生成できます。「どこのデータか」を省略すると、汎用的すぎて使えないコードが返ってくることがあります。
5. サンプルデータを3〜5行貼り付けてから依頼する
実際のデータを数行コピーして貼り付けると、AIがデータ構造を正確に把握して、そのまま使えるコードを出力してくれます。個人情報が含まれる場合は、ダミーデータに置き換えてから貼り付けましょう。
6. Excelのバージョンを伝える
XLOOKUP・FILTER・IFSなど、新しい関数はExcel 2019以前では使えません。プロンプトに「Excel 2019環境です」「Microsoft 365を使っています」と明記することで、使用環境に合った関数を提案してもらえます。
AIでExcelができないこと・注意点
生成AIは非常に便利ですが、苦手なこと・注意が必要な点もあります。使う前に把握しておきましょう。
- リアルタイムでExcelを直接操作することはできない(Copilot除く):ChatGPTはあくまでテキストで関数やVBAコードを出力するだけです。Excelファイルを直接開いたり、セルを操作したりすることはできません。コードはコピーして自分でExcelに貼り付ける必要があります。
- 大量データをそのまま貼り付けると処理できない場合がある:1万行以上のデータをチャットに貼り付けると、AIが処理しきれなかったり、応答が不正確になる場合があります。代表的な数十行のサンプルデータを使い、「このデータ構造に合った式を教えて」という形で依頼するのがおすすめです。
- VBAの動作はExcelのバージョン・環境によって変わる場合がある:AIが生成したVBAは、Excel 2016・2019・Microsoft 365で動作が異なる場合があります。特に最新のオブジェクトモデルや関数を使ったコードは、古いバージョンでは動かないことがあります。
- 生成されたコードは必ず動作確認してから本番データに適用する:AIが生成したVBAは意図通りに動かない場合もあります。必ずテスト用のコピーファイルで動作確認をしてから、本番のデータに適用するようにしましょう。特にデータの削除・上書き処理を行うコードは慎重に確認してください。
FAQ
- AIが作った関数が動かない場合はどうすれば?
AIにエラーメッセージをそのまま貼り付けて「このエラーの原因と修正方法を教えてください」と聞いてください。多くの場合、すぐに解決策を提示してくれます。
- VBAはセキュリティ的に安全ですか?
AIが生成したVBAは、基本的な操作のみであれば安全です。ただし、インターネットに接続するような処理や、不明なコードは実行前に内容を確認しましょう。また、ExcelのマクロはマクロOFF設定でブロックされることもあります。
- Copilotは必要ですか?ChatGPTだけではダメですか?
ChatGPTだけで関数生成・VBA作成・分析コメント作成はできます。Copilotは「Excelを直接操作してほしい」「会話しながらデータを扱いたい」というニーズに応えるもので、必須ではありません。
- Google スプレッドシートでも使えますか?
はい、同様の方法でGeminiやChatGPTにGoogle Sheets用の関数を聞くことができます。Google SheetsはExcelと関数名が異なる場合があるため、「Google Sheets用の関数を教えてください」と指定してください。
まとめ
- AIにExcelの関数を聞くだけで、複雑な数式が一瞬で作れる
- VBA(マクロ)もプロンプト一つで自動生成でき、Alt+F11から貼り付けるだけで使える
- エラーが出たらエラーメッセージをそのままAIに渡せばOK
- 業務内容(経理・営業・人事・マーケ)に合わせたプロンプトを使い分けると効率がアップする
- Microsoft 365 Copilotならより高度な直接操作が可能(月額約4,500円〜)
- ChatGPTの無料プランだけでも十分実用的。まずは今日からプロンプトを試してみよう
今日から、Excelの悩みはAIに聞いてみましょう。