MENU

Excel関数やスプレッドシート式を生成するプロンプトテンプレ

Excel関数やスプレッドシート式を生成するプロンプトテンプレ

Excel や Google スプレッドシートで式を作りたいとき、AI に丸投げするとそれっぽい式は返ってきます。ただし、列構成・期待する結果・使える関数の範囲まで指定しないと、動かない式や、あとで直しにくい長い式になりがちです。

この記事では、ChatGPT、Claude、Gemini などの汎用 LLM で使いやすい、Excel関数やスプレッドシート式を生成するためのコピペ用プロンプトテンプレートをまとめます。2026年4月21日時点の前提として、モデルごとのUIや細かな機能差は変わりうるため、ここではモデル固有機能ではなく、共通して効く書き方に絞ります。

  • 何に使うか: Excel関数、Googleスプレッドシート式、配列数式、検索式、集計式の生成
  • 誰向けか: 関数が苦手な初心者から、式作成を時短したい実務担当者まで
  • ねらう出力: そのまま貼れる式、式の意味、引数の説明、エラー時の代替案
  • 先に結論: 「やりたいこと」だけでなく、列名・サンプル値・使用環境・出力形式まで指定すると精度が上がります

ここがポイント: AIに式を作らせるときは、「何を計算したいか」より「どの列を使い、どこに入れ、どの関数まで使ってよいか」を先に固定したほうが、再利用しやすい式が返りやすくなります。

目次

このプロンプトでできること

単に「関数を作って」と頼むより、使う場面を具体化すると精度が安定します。

たとえば次のような依頼に向いています。

  • 商品コードから単価を引く XLOOKUP 式を作る
  • 条件に合う行だけ抽出する FILTER 式を作る
  • 文字列を結合する TEXTJOIN 式を作る
  • Google スプレッドシートで QUERYARRAYFORMULA を使った式を作る
  • 既存の長い式を読みやすく分解し、必要なら LET で整理する

特に便利なのは、式そのものだけでなく、なぜその式になるのかも一緒に出させることです。あとで自分やチームメンバーが修正しやすくなります。

コピペ用プロンプトテンプレート

まずは汎用版です。Excel と Google スプレッドシートのどちらでも使えます。

あなたは表計算に強いアシスタントです。
次の条件で、{Excel / Googleスプレッドシート} 用の式を1つ作成してください。

# 目的
{何を実現したいか。例: 商品コードをもとに別シートから単価を取得したい}

# 使用環境
- アプリ: {Excel / Googleスプレッドシート}
- バージョンや前提: {Microsoft 365 / Excel 2021 / 不明 / Googleスプレッドシート}
- 使用してよい関数: {例: XLOOKUP, FILTER, IFERROR まで可}
- 使用しない関数: {例: VBA禁止、Apps Script禁止}

# データ構造
- 対象シート名: {シート名}
- 入力セル: {例: E2}
- 参照範囲: {例: マスタ!A:B}
- 列の意味:
  - {例: A列=商品コード}
  - {例: B列=単価}

# 欲しい結果
{例: E2 の商品コードに一致する単価を返し、一致しない場合は空欄にする}

# サンプル
- 入力例: {例: E2=SKU-1001}
- 想定結果: {例: 980}

# 出力形式
以下の順で出力してください。
1. 完成した式のみを1行で出す
2. 式の意味を2〜4行で説明する
3. 各引数の役割を箇条書きで説明する
4. エラーになりやすい点を箇条書きで示す
5. 可能なら、より読みやすい別案も1つ出す

# 制約
- そのまま貼り付けられる構文にする
- セル参照とシート名は省略しない
- 説明は日本語で書く
- 情報が足りない場合は、勝手に決め打ちせず不足項目を先に確認する

Excel向けに寄せた短縮版

XLOOKUPFILTERLET を使いたいときは、前提を短く絞ると返答が安定します。

Excel Microsoft 365 用の式を作ってください。
やりたいこと: {目的}
データ範囲: {範囲}
入力セル: {セル}
返したい結果: {結果}
使ってよい関数: XLOOKUP, FILTER, SORT, LET, IFERROR
出力:
- 1行目に完成した式のみ
- 2行目以降に式の分解説明
- 最後に「この式が向かないケース」も書く

Googleスプレッドシート向けに寄せた短縮版

QUERYARRAYFORMULA を使いたいときに向いています。

Googleスプレッドシート用の式を作ってください。
目的: {目的}
データ範囲: {範囲}
列構成: {列の意味}
出力したい場所: {セル}
使ってよい関数: QUERY, ARRAYFORMULA, IF, TEXTJOIN, FILTER
補足: {ヘッダー行の有無 / 空欄の扱い / 日付列の有無}
出力形式:
1. 完成した式
2. QUERY文字列や各関数の意味
3. うまく動かないときの確認点

入力時に変える部分

テンプレートの {}[] で囲った部分は、次の順で埋めると迷いません。

最低限入れたい項目

  • {目的}: 何をしたいか
  • {使用環境}: Excel か Google スプレッドシートか
  • {入力セル}: どこに式を入れるか
  • {参照範囲}: どの表を見るか
  • {期待結果}: 何が返れば正解か

あると精度が上がる項目

  • 列名だけでなくサンプル値
  • 一致しないときの扱い: 空欄、0、”未登録” など
  • 使ってよい関数の範囲
  • 既存式があるならその式
  • コピー前提か、配列で一括展開したいか

固定しておくとブレにくい条件

  • 「式だけを1行で出す」
  • 「足りない情報は先に質問する」
  • 「説明は日本語」
  • 「代替案を1つだけ出す」

この4つを入れるだけで、冗長な回答や余計な前置きがかなり減ります。

NG例と改善例

よくある失敗は、AI に人間の頭の中だけで成立している前提を渡してしまうことです。

NG例

Excelの関数を作って。
商品コードから価格を出したい。

これだと、AI は次を推測するしかありません。

  • 商品コードがどのセルにあるか
  • 参照表がどこにあるか
  • Excel かスプレッドシートか
  • 一致しない場合にどうするか
  • VLOOKUP でよいのか、XLOOKUP を使えるのか

改善例

Excel Microsoft 365 用の式を作ってください。
目的: E2 の商品コードをもとに、マスタシート A列の商品コードと B列の単価を参照して単価を返す。
入力セル: F2
参照範囲: マスタ!A:B
一致しない場合: 空欄
使ってよい関数: XLOOKUP, IFERROR
出力:
1. 式のみ
2. 引数の説明
3. 古いExcel向けの代替案

ここまで書くと、AI は XLOOKUP(E2,マスタ!A:A,マスタ!B:B,"") のような方向で答えやすくなります。Microsoft の公式サポートでも、XLOOKUP は検索列の左右に関係なく戻り値を返せる関数として案内されています。これは、古い VLOOKUP より実務で扱いやすい場面が多い理由です。

出力を安定させるコツ

OpenAI の公式ガイドは、指示を先頭に置き、出力形式を具体的に示すことを勧めています。Anthropic のドキュメントでも、明確で直接的に書くこと、必要なら例を付けることが基本として整理されています。表計算プロンプトでも、この原則がそのまま効きます。

1. 関数名より先に「場面」を書く

悪い例は「FILTER を使って式を作って」です。これだと関数ありきになります。

先に書くべきなのは次です。

  • どの列で絞るか
  • 何件返したいか
  • 空欄時にどうするか
  • 並び順を変えるか

2. 式だけでなく説明も要求する

式だけ返させると、少し外れていても気づきにくくなります。次も一緒に出させるのが安全です。

  • 完成した式
  • 式の意味
  • 各引数の役割
  • 想定エラー
  • 代替案

3. バージョン差を先に固定する

Excel は関数の対応範囲がバージョンで違います。たとえば Microsoft の公式情報では、XLOOKUP は Excel 2016 と Excel 2019 では利用できません。一方、LETFILTER も比較的新しい環境で使う前提です。

そのため、プロンプトには次のどれかを入れておくべきです。

  • Excel Microsoft 365 前提
  • Excel 2021 前提
  • 古いExcelでも動く関数だけを使う

4. Googleスプレッドシートはヘッダー行と型を明示する

Google の公式ヘルプでは、QUERY は列に混在した型があると少数派の型を null 扱いにすることがあります。日付列や数値列を扱うときは、ヘッダー行の数と列の中身を伝えたほうが安全です。

たとえば次の一文を足すだけでも違います。

A1:D1 はヘッダー、A列は日付、B列は商品名、C列は数値、D列は担当者名です。

すぐ使える活用例

ここでは、実務で出番が多い3パターンに絞ります。

1. 商品コードから単価を引く

向いている場面は、受注一覧からマスタ参照で価格を埋める作業です。

Excel Microsoft 365 用の式を作ってください。
目的: 受注一覧シートの E2 の商品コードから、マスタシート A列の商品コードとB列の単価を参照して単価を返す。
入力セル: F2
一致しない場合: 空欄
使ってよい関数: XLOOKUP, IFERROR
出力:
1. 式のみ
2. 説明
3. 下方向にコピーするときの注意点

2. 条件に合うデータだけ一覧表示する

複数条件で抽出したいときは、Excel の FILTER が強力です。Microsoft の公式例でも、条件配列を組み合わせて結果を返す使い方が示されています。

Excel Microsoft 365 用の式を作ってください。
目的: 売上表 A5:D200 から、商品名が H1 と一致し、地域が H2 と一致する行だけ抽出したい。
出力先: J5
空の場合: "該当なし"
使ってよい関数: FILTER, SORT
出力形式:
- 1行目に完成した式
- 次に AND 条件の作り方を説明

3. スプレッドシートで集計用のQUERY式を作る

Google スプレッドシートでは、QUERY を使うと集計表の下ごしらえが速くなります。Google の公式ヘルプでも、selectwheregroup bypivot の例がまとまっています。

Googleスプレッドシート用の式を作ってください。
目的: A:D の売上データから、担当者ごとの売上合計を集計したい。
列構成:
- A列=日付
- B列=担当者名
- C列=商品名
- D列=売上金額
ヘッダー行: 1行
出力先: F1
使ってよい関数: QUERY
出力:
1. 完成した式
2. query文字列の意味
3. 列の型が混在した場合の注意点

失敗しやすい点

関数生成プロンプトでは、次のミスが目立ちます。

  • Excel と Google スプレッドシートを混同する
  • 新しい関数を前提にしたのに、実際の環境が古い
  • 配列で返す式なのに、貼り付け先の空き範囲を考えていない
  • QUERY の文字列条件や日付条件を書き切れていない
  • エラー時の返り値を指定せず、#N/A#CALC! がそのまま出る

Google の公式ヘルプでは ARRAYFORMULA が複数行・複数列へ結果を展開できると説明されています。便利ですが、貼り付け先に既存データがあると崩れやすいので、一括展開系の式は出力先の空き領域まで伝えるのが実務的です。

チェックリスト

AI に依頼する前に、最低でもここを確認すると失敗が減ります。

  • アプリは ExcelGoogleスプレッドシート
  • バージョンは新しい関数を使えるか
  • 式を入れるセルはどこか
  • 参照するシート名と列の意味は明確か
  • 一致しないときの返り値を決めたか
  • 1件返すのか、一覧で返すのか
  • 式だけでなく説明も出させるか

最後はここです。AI に式を作らせる作業は、関数知識の勝負というより、前提をどこまで言語化できるかの勝負です。次に試すなら、今使っている実データの列名とサンプル1行だけを添えて、同じテンプレートで1本作らせてみてください。返ってくる式の質が一段上がるはずです。

参照リンク

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次