ChatGPTでExcel関数を作る方法|初心者でも簡単に関数作成を自動化できる活用術

Excel

Excelで集計や判定をしたいのに、「どの関数を使えばよいのか分からない」「関数名は分かっても、セル参照の書き方で止まってしまう」という場面は少なくありません。ChatGPTを使えば、関数名を覚えていなくても「何をしたいか」「表のどこに何が入っているか」を日本語で伝えることで、Excel関数のたたき台を作れます。

ただし、「売上を集計する関数を作って」のような曖昧な依頼だけでは、実際の表と合わない数式が返されることがあります。重要なのは、目的、列の配置、条件、Excelの利用環境を具体的に伝え、最後はExcel上で結果を確認することです。ここでは、初心者でも再現できる依頼方法から、IF、SUMIFS、COUNTIFS、XLOOKUPの作成例、エラーの直し方まで順番に解説します。

ChatGPTなら関数名を知らなくてもExcel関数を作れる

ChatGPTでExcel関数を作るとき、最初から「SUMIFSを使う」「XLOOKUPを使う」と判断できる必要はありません。

たとえば、「東京の担当者で、完了した案件の売上だけを合計したい」と伝えれば、表の構成に応じてSUMIFSなどの候補を考えてもらえます。

関数作成でChatGPTに任せやすいのは、主に次の作業です。

  • やりたい処理に合うExcel関数を選ぶ
  • 日本語の条件をExcel関数へ変換する
  • 複数条件を組み合わせた数式を作る
  • 既存の数式が何をしているのか説明する
  • エラーが出た数式の原因候補を整理する
  • 別の関数を使った書き方を提案する

ChatGPT自体の基本操作から確認したい場合は、ChatGPTとは?初心者向けにできることや使い方をわかりやすく解説も参考にしてください。

関数名が分からないときは、無理に関数名を指定しなくても構いません。「この表で最終的に何を表示したいか」を具体的に伝えるほうが、目的に合う式を作りやすくなります。

最初に使えるChatGPTへの依頼文

まずは、次のような売上管理表を例にします。

A列:受注日B列:担当者C列:地域D列:商品E列:売上F列:状態
22026/7/1田中東京商品A120000完了
32026/7/2佐藤大阪商品B80000完了
42026/7/3田中東京商品B95000未完了
52026/7/4鈴木東京商品A150000完了
62026/7/5田中名古屋商品A70000完了
72026/7/6佐藤東京商品C110000完了
82026/7/7田中東京商品A130000完了

この表から「担当者が田中」「地域が東京」「状態が完了」の売上だけを合計したいとします。

ChatGPTには、次のように入力します。

Excelの関数を作成してください。

表の構成:
A列:受注日
B列:担当者
C列:地域
D列:商品
E列:売上
F列:状態
データ範囲:2行目から8行目

やりたいこと:
担当者が「田中」
地域が「東京」
状態が「完了」
以上の3条件をすべて満たす売上金額を合計したいです。

完成したExcel関数を1つ提示し、
各セル範囲の意味も初心者向けに説明してください。
表に存在しない列や条件は追加しないでください。

この条件なら、完成形は次のようになります。

=SUMIFS(E2:E8,B2:B8,"田中",C2:C8,"東京",F2:F8,"完了")

E2:E8が合計する売上金額、B2:B8が担当者、C2:C8が地域、F2:F8が状態です。サンプル表では2行目と8行目が3条件をすべて満たすため、期待される合計結果は250,000円です。

SUMIFS自体の条件指定や日付範囲、OR条件まで詳しく確認したい場合は、ExcelのSUMIFS関数の使い方|複数条件・日付・OR条件・エラー対策を実務例で解説で個別に解説しています。

精度を上げるには4つの情報をChatGPTへ伝える

ChatGPTへ関数作成を依頼するときは、長いプロンプトを書くことよりも、必要な情報を抜けなく伝えることが大切です。

1.最終的に何をしたいのか

最初に、求める結果を日本語で説明します。

  • 条件に合う売上を合計したい
  • 商品コードから商品名を取得したい
  • 100,000円以上なら「重点」と表示したい
  • 東京に該当する案件数を数えたい

「Excel関数を作って」だけではなく、完成後にセルへ何が表示されれば正解なのかまで伝えます。

2.どの列に何が入っているのか

ChatGPTは、説明していないExcelファイルの列配置を自動的に把握できるとは限りません。

そのため、最低でも次のように列名を伝えます。

A列:商品コード
B列:商品名
C列:単価
D列:数量
E列:金額

シートをまたいで検索する場合は、「売上シート」「商品マスタ」などシート名も指定します。

3.条件と例外処理

実務では、単純に計算するだけでなく、空欄や該当データがない場合の処理も必要です。

たとえば次のように指定します。

  • 見つからない場合は「未登録」と表示する
  • 売上が空欄なら何も表示しない
  • 100,000円以上を「重点」、それ未満を「通常」にする
  • エラーを0で隠さず原因が分かる形にする

4.使用しているExcelの環境

Excelのバージョンによって使用できる関数が異なる場合があります。特にXLOOKUPなどを使うときは、「Microsoft 365を使用しています」「Excel 2019でも使える式にしてください」のように利用環境を伝えておくと安全です。

たとえば古いExcelとの互換性を重視する場合は、次の一文を加えます。

Excel 2019でも使用できる関数だけで作成してください。

利用できない関数をChatGPTが選んだ場合でも、環境を伝えて「別の関数で作り直してください」と続けて依頼できます。

実務で使えるExcel関数をChatGPTで作る4つの例

基本の依頼方法を覚えれば、さまざまなExcel関数へ応用できます。

IF関数で金額を判定する

E2の売上が100,000円以上なら「重点」、それ未満なら「通常」と表示したい場合は、次のように依頼します。

ExcelのIF関数を作ってください。
E2の売上が100000以上なら「重点」、
100000未満なら「通常」と表示したいです。
完成した関数と意味を説明してください。

完成形は次のとおりです。

=IF(E2>=100000,"重点","通常")

IF関数では、「どの条件を判定するか」「条件を満たした場合」「満たさない場合」の3点を伝えるのがポイントです。

空欄処理やAND・OR条件まで組み合わせる場合は、ChatGPTでIF関数を作る方法|初心者でも簡単に条件分岐を自動化する活用術も参考にしてください。

COUNTIFSで条件に合う件数を数える

サンプル表から「地域が東京」「状態が完了」の件数を数える場合は、次の関数になります。

=COUNTIFS(C2:C8,"東京",F2:F8,"完了")

サンプル表では2行目、5行目、7行目、8行目が条件に該当するため、期待される結果は4件です。

ChatGPTへ依頼するときは、「合計したい」ではなく「件数を数えたい」と書くことが重要です。目的が曖昧だと、SUMIFSなど別の関数が提案される可能性があります。

XLOOKUPで商品コードから商品名を取得する

別シートの商品マスタから商品名を取得する処理も作成できます。

たとえば、商品マスタシートのA列に商品コード、B列に商品名があり、売上シートのA2に入力された商品コードから商品名を取得するとします。

Excelの関数を作ってください。

売上シートのA2に商品コードがあります。
商品マスタシートでは、
A列が商品コード
B列が商品名です。

売上シートのA2の商品コードを検索して、
対応する商品名を表示してください。
見つからない場合は「未登録」と表示してください。

Microsoft 365などXLOOKUPを利用できる環境では、次のような式を使用できます。

=XLOOKUP(A2,商品マスタ!A:A,商品マスタ!B:B,"未登録")

XLOOKUPは検索する範囲と返す範囲を別々に指定できます。Excel 2016やExcel 2019などXLOOKUPを利用できない環境では、VLOOKUPやINDEXとMATCHの組み合わせなど、対応する環境に合わせた代替式を依頼してください。

XLOOKUPを使った検索処理を詳しく確認したい場合は、ChatGPTでXLOOKUPを作る方法|Excel関数をAIで簡単作成する手順と活用例で具体例を紹介しています。

複数条件を自然な日本語から関数へ変換する

ChatGPTが特に役立つのは、関数名は分からなくても業務条件だけは明確なケースです。

たとえば、次のような日本語でも依頼できます。

受注日が2026年7月中で、
担当者が田中さん、
状態が完了になっている案件だけを対象に、
売上金額を合計したいです。

どのExcel関数が適しているか判断して、
完成した式を作ってください。

このように「関数を指定する」のではなく、「業務ルールをExcel関数へ変換してもらう」という使い方ができます。

ChatGPTの回答が違ったときは会話で修正する

最初の回答が完全に希望どおりでなくても、毎回最初から質問し直す必要はありません。

同じ会話の中で、間違っている箇所や追加条件を伝えます。

セル範囲が違う場合

E列ではなくF列が売上です。
ほかの条件は変更せず、数式だけ修正してください。

条件を追加したい場合

先ほどの関数に、
D列の商品が「商品A」という条件も追加してください。

数式が複雑すぎる場合

同じ結果になる範囲で、
Excel初心者でも修正しやすい数式にしてください。
使用している関数の役割も説明してください。

使用できない関数が含まれている場合

このExcelではXLOOKUPが使用できません。
同じ結果になるようにVLOOKUPまたは別の対応関数で作り直してください。

ChatGPTを「一度で正解を出す関数生成機」と考えるより、Excelの要件を一緒に整理する補助役として使うほうが、実務では扱いやすくなります。

修正を依頼するときは「違います」だけで終わらせず、「どのセルが違うのか」「どんな結果になったのか」「本来の正解は何か」を伝えると原因を絞り込みやすくなります。

作ってもらった関数が動かないときの質問方法

ChatGPTが生成した数式をExcelへ貼り付けても、期待した結果にならない場合があります。

そのときは、次の3点をセットで伝えます。

  • 実際に使用した数式
  • Excelに表示されたエラーまたは結果
  • 参照している列とセルの意味

たとえば次のように質問します。

次のExcel関数が正しく動きません。

=SUMIFS(E2:E100,B2:B100,"田中",C2:C80,"東京")

Excelではエラーになります。

B列:担当者
C列:地域
E列:売上

原因を確認し、
正しい数式へ修正してください。
修正した箇所も説明してください。

この例では、合計範囲と条件範囲の行数が一致していません。正しくそろえるなら、たとえば次のように修正します。

=SUMIFS(E2:E100,B2:B100,"田中",C2:C100,"東京")

エラー内容を正確に伝えることで、「数式をもう一度作る」だけでなく、「なぜ失敗したのか」を確認できます。

ChatGPTへExcelファイルを渡して関数を相談する方法もある

列数が多く、文章で表構成を説明しにくい場合は、利用できる環境でExcelファイルやCSVファイルをChatGPTへ添付して相談する方法もあります。

OpenAIの公式ヘルプでは、ChatGPTのデータ分析機能が.xlsx、.xls、.csvなどの表計算ファイルに対応していることが案内されています。利用できる機能はモデル、プラン、ワークスペース設定などによって異なるため、最新情報はOpenAI公式のデータ分析ヘルプで確認してください。

ファイルを使う場合も、依頼内容は具体的にします。

添付したExcelの「売上一覧」シートを確認してください。

G列に、
B列の担当者とC列の地域を条件にして
E列の売上を集計する関数を作りたいです。

元データは変更せず、
使用する関数と入力するセルを説明してください。

2026年8月時点では、Excel内のサイドバーから利用する「ChatGPT for Excel」もOpenAIから案内されています。利用環境や使用上限、組織の管理設定によって利用条件が異なるため、必要な場合はChatGPT for Excelの公式案内を確認してください。

ただし、単純な関数作成であればExcelファイル全体を送る必要はありません。列名と数行のサンプルだけで十分な場合は、必要な情報だけを入力するほうが管理しやすくなります。

業務データを入力するときは情報の範囲を確認する

会社のExcelをChatGPTへ入力するときは、関数の正しさだけでなく情報管理にも注意が必要です。

特に、次のような情報をそのまま貼り付ける必要があるかを確認してください。

  • 氏名や住所、電話番号などの個人情報
  • 顧客情報
  • 社員情報
  • 取引先との契約情報
  • 未公開の売上や原価
  • 社内限定の機密情報

関数作成だけが目的なら、実データではなく次のように置き換えて説明できます。

A列:顧客ID
B列:担当者
C列:地域
D列:売上

担当者は「担当者A」
地域は「東京」
というサンプルデータで関数を作ってください。

会社で利用する場合は、所属組織のAI利用ルールや情報セキュリティ規程も確認してください。

ChatGPTで作った関数は3段階で確認する

ChatGPTから自然な説明付きで数式が返ってくると、そのまま正しいように見えることがあります。しかし、最終確認はExcel側で行います。

1.セル参照を確認する

最初に、数式内のセルや列が実際の表と一致しているか確認します。

  • 合計対象の列は正しいか
  • 検索対象の列は正しいか
  • 条件範囲の開始行と終了行はそろっているか
  • 別シートを参照している場合、シート名は正しいか
  • コピーする数式では絶対参照が必要ではないか

2.分かりやすいテストデータで結果を確認する

いきなり数千行の本番データで正しさを判断するのではなく、5件から10件程度の小さな表で確認すると間違いを発見しやすくなります。

たとえば、条件に該当する売上が120,000円と130,000円の2件だけなら、正解が250,000円だと人の目でも確認できます。

3.境界値と該当なしも試す

IF関数なら100,000円の直前と直後、XLOOKUPなら存在する商品コードと存在しない商品コードなど、条件の境目も確認します。

関数が1つのサンプルで動いたからといって、すべてのデータで正しいとは限りません。

AIが生成した数式は「完成品」ではなく「確認対象のたたき台」と考えると安全です。集計結果を元データと照合し、少なくとも正常値、境界値、該当なしの3パターンを確認してください。

ChatGPTに任せる部分と人が判断する部分を分ける

作業ChatGPTに任せやすい人が確認する
関数候補の選定用途との一致を確認
数式の作成セル参照を確認
数式の説明実際の表と照合
エラー原因の整理実データで原因を特定
集計結果の正否補助人が最終確認
機密情報を入力してよいかの判断任せない社内ルールで判断

関数作成の時間を短縮しつつ、最終的な正確性は元データとExcelの結果で確認する。この役割分担が、業務でChatGPTを使うときの基本になります。

よくある質問

ChatGPTにExcel関数の知識がなくても質問できますか?

できます。「どの関数を使えばよいか分かりません」と伝えたうえで、表の構成と求める結果を説明してください。関数名を指定するより、業務上の目的を具体的に伝えることが大切です。

ChatGPTが作ったExcel関数はそのまま使えますか?

そのまま動く場合もありますが、セル範囲、シート名、Excelのバージョン、想定結果を確認してから使用してください。重要な集計では、元データとの照合も必要です。

複雑なIF関数も作れますか?

複数条件を含むIF関数も相談できます。ただし、条件が増えるほど数式が読みにくくなるため、AND、OR、IFSなど別の関数を使ったほうがよい場合もあります。ChatGPTへ「読みやすい方法も比較してください」と依頼すると整理しやすくなります。

ExcelファイルをChatGPTへ添付しないと関数は作れませんか?

ファイルを添付しなくても作成できます。列名、セル位置、条件、期待する結果を文章で伝えれば、多くの関数を相談できます。情報管理上、実データを送る必要がない場合はサンプルデータを使う方法もあります。

数式でエラーが出た場合もChatGPTへ質問できますか?

質問できます。使用中の数式、表示されたエラー、各列の意味、期待する結果を一緒に伝えてください。数式だけを送るより、表の構成まで伝えたほうが原因を絞り込みやすくなります。

関連記事

まとめ

  • ChatGPTを使えば、関数名を知らなくても日本語の要件からExcel関数のたたき台を作れる
  • 「目的」「列の配置」「条件・例外」「Excel環境」を具体的に伝えると、実際の表に合わせやすくなる
  • IF、SUMIFS、COUNTIFS、XLOOKUPなどの関数作成やエラー原因の整理にも活用できる
  • 回答が違う場合は、間違っているセルや追加条件を伝えて会話形式で修正できる
  • AIが作った数式はそのまま信用せず、セル参照、テストデータ、境界値をExcel上で確認する

最初から難しいプロンプトを作る必要はありません。まずは小さなサンプル表を用意し、「この表で何を計算したいか」を日本語でChatGPTへ伝えてみてください。完成した関数をExcelへ貼り付け、期待する結果と一致することを確認する流れを習慣にすると、関数を調べる時間を減らしながら実務へ取り入れやすくなります。

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