マーケティングのExcel作業をAIで自動化する方法
この記事の要点
広告費集計・KPI管理表・媒体比較レポートなど、マーケティングのExcel作業をAIで効率化する手順を解説。関数生成からVBAマクロまでプロンプト例付きで紹介します。
結論
広告費の媒体別集計・月次KPI管理表・A/Bテスト結果レポートなど、マーケティング担当者が毎月繰り返すExcel作業は、AIを使うと所要時間を大幅に削れます。関数を調べる時間・VBAを書く時間・レイアウト調整に使っていた時間が、AIへの指示文を書く数分に変わります。
AIでExcelの何を効率化できるか
Excelに関連してAIが役立つ場面は3種類あります。
1. 関数・数式の生成
「SUMIFS・VLOOKUP・配列数式などがわからない」「複雑な条件集計の関数が書けない」という状況に使えます。やりたいことを日本語で書けば、貼り付けて使える数式を返します。
2. VBA・マクロの生成
毎週・毎月繰り返す作業(複数シートの集計、特定セルの一括フォーマット、新シートへのコピー)を自動化したい場合に使います。VBAの知識がなくても動くコードを生成できます。
3. ファイルを丸ごとアップロードしての分析
ChatGPTのCode Interpreter機能にExcelファイルをアップロードすると、集計・グラフ作成・クリーニング・分析まで自動で行えます。Excelを操作せずに結果が得られます。
使うAIツール
| ツール | Excelでの用途 |
|---|---|
| ChatGPT(GPT-4o with Code Interpreter) | Excelファイルのアップロードと自動処理。グラフ・集計・新シート生成 |
| Claude(Anthropic) | 関数の生成、VBAコードの作成、大量データの構造化 |
| Gemini(Google Workspace) | GoogleスプレッドシートでのApps Script生成・シート操作の自動化 |
関数やVBAコードを生成するだけならClaudeやChatGPTのテキストチャット版でも動きます。
手順:マーケティングのExcel作業をAIで効率化する
ステップ1:やりたいことを日本語で書き出す
「複数シートにある媒体別の広告費を、日付でフィルタして合計したい」のように、具体的な状況を書き出します。使っているExcelのバージョン(Excel 2019・Microsoft 365・Googleスプレッドシート)も書いておくと、対応した数式が返ります。
ステップ2:関数生成プロンプトを作る
以下の状況に合うExcel関数を書いてください。
【状況】
- シート名:「広告費集計」「媒体A」「媒体B」「媒体C」の4シート
- 「広告費集計」シートのA列に日付、B列に媒体名、C列に日予算が入っている
- 「媒体A」シートに実績データ(日付・クリック数・コスト)がある
【やりたいこと】
「広告費集計」のD列に、同じ行の日付と媒体名に一致する「媒体A」のコストを引いてくる関数。
媒体名が一致しない行は空白にする。
【Excelバージョン】
Microsoft 365(最新)
ステップ3:VBAコードを生成する
毎月末に複数シートの集計結果を「月次サマリー」シートに転記する作業を自動化する例です。
以下の作業を自動化するExcel VBAコードを書いてください。
【ブックの構成】
- 「媒体A」「媒体B」「媒体C」の3シートがある
- 各シートのB列:日付、D列:コスト、F列:CV数
【自動化したい作業】
1. 「月次サマリー」シートのA1に「集計実行日」としてTODAY()の日付を入力
2. 各シートのD列とF列の合計を「月次サマリー」シートのB2〜C4に転記
3. 処理が完了したらメッセージボックスで「集計完了」と表示
【注意】
- マクロを実行する前にバックアップを取ることを前提にしたコードにしてほしい
- エラー処理を含めてほしい
ステップ4:生成されたコードを貼り付けて動作確認する
VBAコードを使う場合は、必ずバックアップを取ってから試してください。ExcelのAlt+F11でVBEを開き、「Module」を新規作成してコードを貼り付け、F5で実行します。
エラーが出た場合は、エラーメッセージをそのままAIに貼り付けて「修正版を書いて」と依頼します。
具体例1:媒体別広告費の週次集計表を自動生成する
複数の広告媒体(リスティング・SNS・ディスプレイ)の実績を毎週Excelで集計する作業を、VBAで自動化した事例です。
以下の作業をVBAで自動化してください。
【状況】
- 「生データ」シートにA列:週、B列:媒体名、C列:広告費、D列:CV数のデータが随時追加される
- 週と媒体名の組み合わせは重複がある(同じ媒体の日次データが複数行ある)
【やりたいこと】
「週次サマリー」シートに、週×媒体のクロス集計表を自動生成する。
行に週、列に媒体名、セルに広告費の合計を入れる。
ボタンをクリックするとこの処理が実行されるようにする。
【前提】
- 媒体名はデータから自動取得する(ハードコードしない)
- 週の順に上から並べる
このコードをボタンに割り当てると、毎週のデータ追加後にボタン1クリックで集計表が更新されます。手作業で15分かかっていた集計が10秒で終わります。
具体例2:KPI管理表の条件付き書式を一括設定する
月次KPI管理表で、目標未達のセルを赤くする設定を毎月手動でやっていた担当者が、VBAで一括設定を自動化した例です。
以下の条件付き書式をVBAで設定するコードを書いてください。
【シート:「KPI管理」】
- B2〜B13:各月の実績CVR
- C2〜C13:各月の目標CVR
【設定したい条件】
- 実績が目標を下回る行(B列 < C列)はB列のセルを背景色「赤(薄め)」にする
- 実績が目標を上回る場合は背景色を「緑(薄め)」にする
- このシートの全データ行に適用する
条件付き書式をGUI操作で1行ずつ設定する代わりに、このコードを月初に1回実行するだけで12行分が設定されます。
うまくいかない場合のポイント
関数が「VALUE!」や「REF!」エラーを返す
生成された関数を貼り付けてエラーが出た場合、エラーの内容・シート構成・データのサンプルをAIに再提供して「修正版を書いて」と依頼してください。セル参照の絶対参照・相対参照の設定ミスが多いです。
VBAが途中で止まる
エラーが起きた行と、ブックの構成(シート名・データ量)をAIに伝えると、修正版が返ってきます。「デバッグモードで実行した結果、○行目でエラー」という情報を含めるとより正確に修正できます。
Googleスプレッドシートで動かない
「ExcelではなくGoogleスプレッドシートのARRAYFORMULAを使って」「Google Apps Scriptで書いて」と明示してください。ExcelとGoogleスプレッドシートでは一部の関数名と構文が異なります。
内部リンク
Excel集計後のデータをAIで分析・解釈する方法はマーケティングのデータ集計・分析をAIで行う手順で詳しく解説しています。データから得た知見をもとにアイデアをまとめる方法はマーケティングのアイデア出し・壁打ちにAIを使う方法もご参照ください。
ExcelのAI活用は「関数を聞く」「VBAを書かせる」の2つから始めるのが最短です。まず毎月繰り返している集計作業を1つ選んで、AIにコードを生成させてみてください。初回の設定に30分かければ、以降の毎月の作業が数秒になります。
よくある質問
ExcelをAIに使わせるにはどうしますか?
ChatGPTのCode Interpreter(GPT-4o)にExcelファイルをアップロードすると、集計・グラフ作成・新しいシート生成まで自動処理できます。関数を聞くだけならテキストで「〇〇する関数を教えて」と質問するだけで動きます。
VBAの知識がなくてもマクロを作れますか?
「〇〇を自動化するVBAコードを書いて」と依頼すると、コピーして貼り付けるだけで動くコードを生成します。ただし、動作確認は必ず自分のファイルのバックアップ上で行ってください。
AIが生成した関数やコードが動かないときはどうしますか?
エラーメッセージをそのままAIに貼り付けて「このエラーの原因と修正方法を教えて」と聞くと、ほとんどの場合は修正版を返してくれます。
GoogleスプレッドシートでもAIは使えますか?
Googleスプレッドシート固有の関数(ARRAYFORMULA・IMPORTRANGE等)やGoogle Apps Scriptの生成もAIに依頼できます。「ExcelではなくGoogleスプレッドシートの関数で」と明示してください。