AI技術の進歩により、関数やマクロに精通していなくても適切なプロンプト(指示文)を与えることで必要な関数を生成できる。エクセル用のプロンプトとエラー修正・テスト方法をまとめた。
目次
エクセルには現在500種類以上の関数がある。従来は業務で使用するためにこれらの関数やマクロの知識が不可欠だったが、AI技術の進歩により適切なプロンプト(指示文)を与えれば、求める関数を簡単に生成できるようになった。
AIに適切な指示を与えて使いこなす技術(プロンプトエンジニアリング)は、業務効率化を図る上で今後も重要になっていく。業務でエクセルを使う人はぜひ覚えておこう。
本記事では、エクセル関数のプロンプトの基本から実践的な活用方法までを、プロンプトのテンプレート、エラーの修正方法、生成結果のテスト方法も含めて解説する。
そもそもプロンプトとは?
プロンプト(指示文)とは、生成AIに具体的な指示を与える文章を指す。エクセルの場合は、求める計算結果や処理内容を自然言語で表現することでAIに関数や数式を生成してもらえる。
■AIサービスとプロンプトでエクセル関数を使いこなそう
エクセル関数を生成できるAIサービスには、主に以下のようなものがある。
・ChatGPT……OpenAI社が開発した対話型AI。知名度が高く、エクセル関数の生成に優れる。
・Microsoft Copilot……Microsoft社が開発したAI。同社のMicrosoft 365 Personal/Familyを契約している場合は追加料金なし(毎月のAIクレジット範囲内)で利用できる。
・Claude……Anthropic社の生成AI。論理的思考力に優れ、複雑な条件式の生成が得意。
・Gemini……Googleが提供する生成AI。Googleスプレッドシートとの連携が強く、データ分析機能が充実している。
■基本のエクセル関数プロンプトの書き方
生成AIのアウトプットの質を高めるには、プロンプトを「端的に・具体的に」書くことが重要となる。データ構造、条件、期待する結果を詳しく記述しよう。
【エクセル関数を指示する際のポイント】
・目的を明確にする……何を計算したいかを具体的に記述
・データの構造を説明……どの列にどのようなデータが入っているかを明記
・条件を詳しく指定…… IF文などの条件分岐がある場合は、全ての条件を列挙
・出力形式を指定……結果をどの形式で出力したいかを明記
エクセルでよく使う関数をプロンプトで指示してみよう
それでは、実際の業務でよく使うエクセル関数のプロンプト例文を見てみよう。
■主なエクセル関数のプロンプト1:基本のSUMやAVERAGEを呼び出す方法
まずは、比較的簡単な計算で使えるプロンプトを紹介する。
【SUM関数のプロンプト】
A1からA10までの数値を合計するExcel関数を教えてください。
【AVERAGE関数のプロンプト】
B列の5行目から20行目までの平均値を計算する関数式を作成してください。
条件:空白セルは計算から除外したい
【条件付き集計のプロンプト】
以下の目的を達成するためのExcelの関数式を出力してください。
#目的
C列が「営業部」の行のD列(売上金額)を合計したい
#データ構造
・C列:部署名
・D列:売上金額(数値)
・データ範囲:2行目から100行目まで
■主なエクセル関数のプロンプト2:IFやVLOOKUPへの応用
次に、より複雑な関数のプロンプトを見てみよう。
【IF関数のプロンプト】
以下の目的を達成するためのExcelの関数式を出力してください。
#目的
A列の数値を判断し、B列に「優・可・不可」を出力したい。
#条件
・A列80以上の場合は優と出力
・A列60以上80未満の場合は可と出力
・A列60未満の場合は不可と出力
【VLOOKUP関数のプロンプト】
#目的
社員IDから社員名を取得するVLOOKUP関数を作成したい
#データ構造
・A列:検索したい社員ID
・Sheet2のA列:マスタの社員ID
・Sheet2のB列:マスタの社員名
・検索範囲:Sheet2のA:B列
・完全一致で検索したい
#出力場所
B列に社員名を表示
関数プロンプトでエクセルの作業効率を上げるコツ
AIでエクセル作業を効率化するコツを紹介する。
■プロンプトを使ったエクセル関数の効率化1:引数の自動補完を指示する
生成AIに「セル構造と条件」を伝えることで、引数を自動で埋める関数の生成が可能となる。
【引数自動補完のプロンプト(シンプル版)】
次の条件を満たすExcel関数を作成してください。
・A列の値が「完了」の場合、B列の値を返す
・A列の値が「未完了」の場合、「作業中」と表示する
・A列が空白の場合は「-」と表示する
結果をC列に出力したいです。
【引数自動補完のプロンプト(AIに補完を依頼)】
この表で使う関数を作成してください。
#データ構造
A列:ステータス(完了/未完了/空白)
B列:作業内容
#ルール
・完了なら作業内容を表示
・未完了なら「作業中」と表示
・空白なら「-」を表示
#補足
Excel 2019を利用しています。互換性のある関数でお願いします。
■プロンプトを使ったエクセル関数の効率化2:複雑な計算式を分割で提示する
複雑な計算をさせる場合は、指示を分割することで精度を高められる。
【計算式を段階的に提示するプロンプト】
ステップ1:D列の売上金額からE列の原価を引いた利益を計算する関数(F列)
ステップ2:F列の利益をD列の売上金額で割った利益率を計算する関数(G列)
ステップ3:G列の利益率を%表示にフォーマットする方法
各ステップの関数を教えてください。







DIME MAGAZINE











