ChatGPT × Excel で関数を一瞬で作る方法 — コピペで使えるプロンプト付き

仕事効率化

先に正直に言っておきます。ChatGPT が生成した Excel 関数は、そのまま使うと壊れることがあります。

「え、AIが作った関数なのに間違ってるの?」と思うかもしれません。実際、ChatGPTのExcel関数生成は体感で8割は正解です。でも残りの2割で「VLOOKUP の引数の順番が逆」「日本語環境ではセミコロン区切りなのにカンマで出力」「存在しない関数名を堂々と提案」といったエラーが出ます。

だからといって「使えない」わけではありません。ChatGPT は Excel の関数やマクロを作る最速のツールです。 ただし「出力を鵜呑みにしない」「検算する」という一手間が必要です。

この記事では、コピペで使えるプロンプト7選に加えて、ChatGPT が Excel 関数で犯しやすいエラーの実例と対策を紹介します。「AIは便利だけど万能じゃない」を前提にした、実践的な活用ガイドです。

※ この記事は AI アシスタントを活用して執筆しています。プロンプトは2026年2月時点で ChatGPT(GPT-5.2)で動作確認済みです。


ChatGPT で Excel 関数を作る基本の流れ

3ステップで関数が完成

ステップ1: ChatGPT に「やりたいこと」を日本語で伝える
ステップ2: 出力された関数をコピーする
ステップ3: Excel のセルに貼り付ける

これだけです。関数名を覚える必要も、引数の順番を調べる必要もありません。

良い指示の出し方

ChatGPT に良い関数を出してもらうコツは、「データの場所」と「やりたいこと」を具体的に伝える ことです。

悪い例:

売上を計算する関数を教えて

良い例:

Excel で以下の処理をする関数を教えてください。

【シート名】売上データ
【データ構成】
- A列: 日付
- B列: 商品名
- C列: 単価
- D列: 数量
- E列: 売上金額(ここに関数を入れたい)

【やりたいこと】
E2セルに、C2(単価)× D2(数量)の計算結果を表示する関数を入れたい。

コピペで使えるプロンプト7選

プロンプト1: 条件付き合計(SUMIFS)

使う場面: 「営業部の売上だけ合計したい」「今月分だけ集計したい」

Excel で以下の条件に合うデータだけを合計する関数を教えてください。

【データの場所】
- A列: 部署名(営業部、経理部、開発部 など)
- B列: 売上金額

【条件】部署名が「営業部」のデータだけを合計
【結果を入れるセル】D2

プロンプト2: 別シートからデータを引っ張る(VLOOKUP / XLOOKUP)

使う場面: 「商品コードから商品名と単価を自動で表示したい」

Excel で別シートからデータを参照する関数を教えてください。

【現在のシート(入力シート)】
- A列: 商品コード(例: A001, B002)
- B列: 商品名(ここに自動表示したい)
- C列: 単価(ここに自動表示したい)

【参照先シート名】商品マスタ
- A列: 商品コード
- B列: 商品名
- C列: 単価

【やりたいこと】
入力シートのA2に商品コードを入れたら、商品マスタから該当する商品名と単価を自動表示する。
商品コードが見つからない場合は空欄にする。

※ 使用しているExcelのバージョンは Excel 2021 です。XLOOKUP が使えるか不明なので、使える場合と使えない場合の両方の関数を教えてください。

プロンプト3: 複数条件の IF 関数

使う場面: 「点数によってA/B/C/Dのランクを自動で振り分けたい」

Excel で以下の条件分岐をする関数を教えてください。

【データ】B列に点数(0〜100の数値)が入っている
【条件】
- 90以上 → 「A」
- 80以上90未満 → 「B」
- 70以上80未満 → 「C」
- 70未満 → 「D」

【結果を入れるセル】C2

※ IFS関数が使えない古いExcelにも対応できるよう、IF関数の入れ子でも書いてください。

プロンプト4: 日付の計算(営業日・期限管理)

使う場面: 「納品日から30営業日後の期限を計算したい」

Excel で営業日を計算する関数を教えてください。

【データ】A2セルに開始日(例: 2026/02/17)が入っている
【やりたいこと】
- B2セルに「A2 から 30営業日後の日付」を表示する
- 土日は除外する
- 祝日リストがE列(E2:E20)にある場合、祝日も除外する方法も教えてください

プロンプト5: 文字列の加工(氏名の分割・結合)

使う場面: 「フルネームを姓と名に分けたい」「バラバラのデータを1つのセルにまとめたい」

Excel で文字列を加工する関数を教えてください。

【パターン1: 分割】
A列に「山田 太郎」(姓と名の間にスペース)が入っている。
B列に姓(山田)、C列に名(太郎)を分けて表示したい。

【パターン2: 結合】
D列に都道府県(東京都)、E列に市区町村(渋谷区)、F列に番地(1-2-3)が入っている。
G列に「東京都渋谷区1-2-3」とスペースなしで結合したい。

プロンプト6: 重複チェック

使う場面: 「顧客リストに重複がないか確認したい」

Excel でデータの重複をチェックする方法を教えてください。

【データ】A列にメールアドレスが500件入っている
【やりたいこと】
1. B列に、そのメールアドレスが重複しているかどうかを表示する(重複なら「重複」、ユニークなら空欄)
2. 重複を色分けする条件付き書式の設定方法も教えてください

プロンプト7: ピボットテーブル風の集計(SUMPRODUCT)

使う場面: 「月別・カテゴリ別のクロス集計を関数でやりたい」

Excel でクロス集計をする関数を教えてください。

【データシート】
- A列: 月(1月, 2月, 3月...)
- B列: カテゴリ(食品, 飲料, 日用品)
- C列: 売上金額

【集計シート】
- 行: カテゴリ(A列に食品, 飲料, 日用品)
- 列: 月(B1に1月, C1に2月, D1に3月...)
- B2セルに「食品」かつ「1月」の売上合計を表示したい

※ SUMPRODUCT関数を使った方法を教えてください。

さらに便利 — VBA マクロも ChatGPT で自動生成

関数だけでなく、VBA マクロ(Excelの自動化プログラム)も ChatGPT で作れます。 プログラミング経験はまったく不要です。

マクロ生成プロンプトの例

Excel VBA で以下の処理を行うマクロを作成してください。

【処理内容】
1. 「売上データ」シートのA2からD列の最終行までのデータを取得
2. D列(売上金額)が10万円以上のデータだけを抽出
3. 抽出したデータを「高額売上」シートにコピーする(ヘッダー付き)
4. 処理完了後に「◯件抽出しました」とメッセージを表示

【注意】
- Excel 2016以降で動作すること
- 初心者でも理解できるようにコメントを付けること
- エラー処理を入れること

マクロの貼り付け方(30秒)

  1. Excel で Alt + F11 を押す(VBA エディタが開く)
  2. 左側のプロジェクトウィンドウで「標準モジュール」を右クリック → 「挿入」→「標準モジュール」
  3. ChatGPT が出力したコードを貼り付ける
  4. F5 で実行

エラーが出たら

ChatGPT が出力したコードでエラーが出ることもあります。その場合は、エラーメッセージをそのまま ChatGPT に伝えてください。

先ほどのマクロを実行したら以下のエラーが出ました。修正してください。

エラーメッセージ: 「実行時エラー '9': インデックスが有効範囲にありません」
エラーが発生した行: Worksheets("高額売上").Range("A1")

ほとんどの場合、修正版のコードを出してくれます。


【実例】ChatGPT が Excel 関数で犯す「あるあるエラー」5選

「AIに任せれば安心」と思っていると痛い目に遭います。実際に遭遇しやすいエラーパターンを5つ紹介します。

エラー1: VLOOKUP の「検索方法」を省略する

ChatGPT が生成する VLOOKUP で最も多いミスです。

❌ AIの出力: =VLOOKUP(A2, 商品マスタ!A:C, 2)
✅ 正しくは: =VLOOKUP(A2, 商品マスタ!A:C, 2, FALSE)

最後の引数 FALSE(完全一致)を省略すると、Excel はデフォルトで「近似一致」を使います。これにより、存在しない商品コードでも「それっぽい」結果を返してしまうという危険なバグが発生します。数字のずれに気づかないまま報告書を提出するリスクがあります。

エラー2: 日本語環境の区切り文字問題

❌ AIの出力: =IF(A1>100, "合格", "不合格")   ← カンマ区切り
✅ 日本語Excel: =IF(A1>100; "合格"; "不合格")  ← セミコロン区切りの場合あり

ChatGPT は英語版 Excel を前提に回答することが多く、引数の区切りがカンマ(,)で出力されます。日本語版 Excel の一部環境(地域設定によってはセミコロン(;)が必要)ではそのまま貼り付けるとエラーになります。

対策: プロンプトに「日本語版Excel(区切り文字はカンマ)を使用しています」と明記してください。

エラー3: 存在しない関数を自信満々に提案する

❌ AIの出力: =CONCATENATEIF(A:A, "営業部", B:B)

この関数は存在しません。 ChatGPT が CONCATENATE と SUMIF を混ぜて「ありそうな関数名」を創作したものです。特に「条件付きで文字列を結合したい」のような、Excel に直接的な関数がない操作を依頼したときに起こります。

対策: 見慣れない関数名が出てきたら、Excelのヘルプまたは Microsoft の公式ドキュメントで存在を確認してください。

エラー4: XLOOKUP を古い Excel に提案する

❌ Excel 2016 なのに: =XLOOKUP(A2, 商品マスタ!A:A, 商品マスタ!B:B)

XLOOKUP は Excel 2021 / Microsoft 365 以降でしか使えません。ChatGPT は最新機能を優先的に提案する傾向があるため、古いバージョンでは動かない関数を出すことがあります。

対策: プロンプトにExcel のバージョンを必ず明記する。「Excel 2016 で使える関数で」と指定すれば、VLOOKUP で代替してくれます。

エラー5: マクロの「シート名」をハードコードする

❌ Worksheets("Sheet1").Range("A1")  ← シート名がデフォルトのまま

ChatGPT が生成する VBA マクロは、シート名を「Sheet1」のようなデフォルト名で書くことが多いです。実際のシート名が「売上データ」だと、実行した瞬間に「インデックスが有効範囲にありません」エラーが出ます。

対策: プロンプトでシート名を明記するか、マクロ実行前にシート名を確認して修正する。

まとめ: AI × Excel の「信頼度レベル」

操作の複雑さ AI の正解率(体感) 検算の必要度
単純な四則演算 95%以上 低(ざっと確認)
VLOOKUP / IF 85%程度 中(テストデータで確認)
複数関数の入れ子 70%程度 高(必ず検算)
VBA マクロ 60〜80% 高(テスト実行必須)

ルール: 関数が複雑になるほど、検算の重要度が上がる。 「AIが作ったから正しい」は危険な思い込みです。


注意点 — ChatGPT × Excel で気をつけること

注意点1: 出力をそのまま信用しない

上の「あるあるエラー5選」の通り、ChatGPT の出力は100%正確ではありません。特に数字が絡む業務(経費精算、売上集計、給与計算など)では、必ずテストデータで検算してください。

検算の手順: 結果がわかっているデータ(手計算で検算できるもの)を3〜5行分用意して、関数の出力と一致するか確認します。この一手間が、大きなミスを防ぎます。

注意点2: 機密データを入力しない

顧客名、売上金額、個人情報などの実データは ChatGPT に入力しないでください。プロンプトでは 「A列に商品名」「B列に金額」 のようにデータの構造だけを伝え、実データは入力しません。

注意点3: Excel のバージョンを伝える

Excel 2016 と Excel 365 では使える関数が異なります(XLOOKUP、FILTER、UNIQUE 等は新しいバージョン限定)。プロンプトに Excel のバージョンを明記 すると、互換性のある関数を出してくれます。


まとめ

  • ChatGPT に「やりたいこと」を日本語で伝えるだけで、Excel の関数もマクロも自動生成 できる
  • コツは「データの場所」と「やりたいこと」を具体的に書くこと
  • VBA マクロも、コードをコピペするだけで使える。プログラミング知識は不要
  • ただし 出力を鵜呑みにしない。 テストデータで必ず動作確認を

今日からできるアクション

次に Excel で「この関数どう書くんだっけ?」と思ったら、Google で検索する代わりに ChatGPT に聞いてみてください。上のプロンプト2(VLOOKUP)をコピペして、自分のデータに合わせて修正するだけで試せます。

関連記事


※ AI アシスタントを活用して執筆しています。プロンプトは2026年2月時点で ChatGPT で動作確認済みです。

タイトルとURLをコピーしました