目安時間: 約120分 ・ 読了目安: 38分

この章で学ぶこと

Excelやスプレッドシートは、多くの職場で日常的に使われるツールです。 「この集計をする関数を教えて」とAIに聞けば、数式がすぐ返ってきます。 ところが、その数式が自分の表の形に合っているとは限りません。

この章では、表計算の業務を題材に、次の3つを練習します。

  • 列構成とサンプル行を渡して、AIが表の形を推測しなくてよくする
  • 「こうなってほしい」という結果の例を、入出力の例として見せる
  • AIが出した数式を、検算で確かめる

第1章の5要素(目的・入力・制約・出力形式・検証)は、この章でも使います。 素材はすべて架空のデータです。実務で使うときは、氏名・金額・取引先名などを伏せるかダミーに置き換えてから貼ってください。 本コースは実務練習用の教材です。AIの出力は必ず人が検証してください。

このユースケースが起きる場面

月次の売上集計、名簿の整理、申請データのチェック。 表計算の作業は、ミスが数字に直結します。AIを使うと、次の失敗が起きます。

  • 列の構成を伝えていないので、AIが「A列が部門、B列が金額」のように推測して数式を作る
  • 空欄や0、表記ゆれなど、実データの例外に対応していない
  • 数式は動くが、範囲がずれていて、一部のデータが集計から漏れる

数式の間違いは、目で見ても気づきにくいのが厄介です。 だからこそ、依頼の段階で表の形を渡し、出力の後に検算するという設計が必要になります。

プロンプト設計シート(再掲)

**目的**:誰に・何のために・何を作るか
**入力**:AIに渡す素材は何か(機密は伏せたか)
**制約**:やってはいけないこと・守るルール
**出力形式**:表・箇条書き・文字数など
**検証**:出力が正しいか、何と突き合わせるか

この章では、「入力」に列名とサンプル行、「出力形式」に数式と説明と検算方法を入れるのが基本です。

実例:条件つきで売上を合計する

状況と素材

あなたは営業課の事務担当です。 営業課の9月の売上表から、「営業2課の、9月3日以降の売上」の合計を出したいと考えています。

この売上表は、ZIPの中のExcelファイル(「売上明細」シート)と同じものです。ダウンロードして、実際に試せます(下の「練習用のサンプルファイル」を参照)。

A列:日付 B列:部門 C列:担当 D列:売上(円) ※1行目は見出し、2〜7行目がデータ
(Excelファイルには、E列に「取引先」もあります。問2で使います)

日付        部門     担当   売上(円)
2026/9/1   営業1課  山田   120000
2026/9/1   営業2課  井上   80000
2026/9/2   営業1課  中村   45000
2026/9/3   営業2課  井上   60000
2026/9/3   営業1課  山田   30000
2026/9/4   営業2課  佐藤   95000

悪い指示とその失敗

売上を条件つきで合計する関数を教えて。

返ってくるのは、たとえば次のような回答です。

SUMIF関数を使います。=SUMIF(A:A, “営業2課”, B:B) のように入力してください。

失敗が2つあります。

  • 部門がB列で、売上がD列であることを、AIは知らないので、列を勝手に仮定している
  • 「9月3日以降」という日付の条件が、まったく反映されていない

表の形を渡していないので、AIは一般的な例を示しただけです。

改善したプロンプト

あなたはExcelの数式に詳しい担当者です。以下の売上表から、指定の条件で合計を求める数式を作ってください。

**目的**
営業2課の、9月3日以降の売上の合計を出す。

**入力**
Microsoft Excel。表の構成は次のとおり(1行目は見出し、データは2〜7行目)。
A列:日付、B列:部門、C列:担当、D列:売上(円)
(サンプル行を貼る)

**制約**
- 上の表の列構成と行の範囲に合わせた数式を作る。列を推測しない
- 日付は日付型として扱う。文字列の比較にしない
- 数式は、1つのセルに入れる形にする

**出力形式**
1. 数式
2. 数式の説明(各引数が、何を指しているか)
3. 検算の方法(手計算で確かめる手順と、期待される結果)

AIの出力と、人が確認した点

数式:=SUMIFS(D2:D7, B2:B7, "営業2課", A2:A7, ">="&DATE(2026,9,3))

説明:D2:D7が合計する売上、B2:B7が「営業2課」の条件、A2:A7が9月3日以降の日付の条件。

検算:営業2課の行で、9月3日以降は「9/3 井上 60000」「9/4 佐藤 95000」の2件。60000+95000=155000 が期待される結果。

人が確認する点は、次のとおりです。

  • 実際にセルに入力し、結果が155000になるか
  • 「9/1 井上 80000」(9月3日より前)が含まれていないか
  • 日付の列が、Excel上で日付型として認識されているか(左寄せの文字列でないか)

AIに「検算の方法と期待される結果」を出させておくと、数式が正しいかを、手元ですぐ確かめられます。

設計メモ:なぜこの書き方か

要素実例での書き方効いた理由
目的「営業2課の、9月3日以降の合計」条件が2つあることが、明確になる
入力使うソフトと、列の構成・行の範囲・サンプル行AIが表の形を推測しなくて済む
制約「列を推測しない」「日付は日付型」よくある間違い(文字列比較)を防ぐ
出力形式数式・説明・検算方法人が動作を確かめられる材料が揃う
検証期待される結果(155000)と手計算数式の誤りを、その場で発見できる

表計算では、「サンプルデータ+期待する結果」を渡すのが最強の指示です。 AIは、例が与えられると、それに合う式を組み立てやすくなります。

先に、シートの設計をAIと決める

表計算でAIを使うとき、依頼の文章より大切なことがあります。 それは、行と列に、どんな項目を入れるかを、先に決めておくことです。

人が読みやすい表と、AIや数式が扱いやすい表は、形が違います。

人が読みやすい表AIや数式が扱いやすい表
形担当者が行、月が列の集計表(クロス集計)1行に1件のデータを、縦に並べた表
見出し結合セルや、複数行の見出しがある見出しは1行だけ。列名は、毎回同じ
空行・装飾見やすくするための空行や色がある空行や結合セルがない

この章の実例の売上表は、右側の「1行に1件」の形です。 入力するシートは、AIや数式が扱いやすい形にして、報告用に人が読むシートは、別に作るのが基本です。

AIは、特に指示しなくても、人が読みやすい表に直してくれることが多くあります。 それでも、縦と横に何を入れるかを決めておかないと、AIはレイアウトに迷います。 出力の指示に、次のように書いておくと安定します。

**出力形式**
行:担当者、列:月、セルの中身:売上の合計(円)
の集計表にする。合計の行と列も付ける。

応用:自動集計のシートを、AIと一緒に設計する

「営業課の売上を、自動で集計したい」と考えたとき、いきなり数式やマクロを作るのは遠回りです。 先に、どんなシートを作るかを、AIと決めます。

営業課の売上データを自動集計するシートを作りたい。
必要な要素と数字を表計算に落とし込むとしたら、どんな設計になる?
まず大雑把な設計を出して。あとで私が確認してから、データを入力する。

この依頼を、Claude Codeで試した結果の要点は、次のとおりです(実行のたびに出力は変わります)。

  • 5枚のシート構成が提案された:マスタ、売上明細、月次集計、目標対比、ダッシュボード
  • 入力は「売上明細」だけにして、ほかのシートは数式で自動計算する、という方針だった
  • 売上明細は、1件を1行にして、日付・担当者・顧客名・商品・数量・単価・売上金額・年月・備考の列を持つ形だった
  • 最後に、AIから6つの質問が返ってきた:使うツール(ExcelかGoogleスプレッドシートか)、集計の切り口、税込か税抜か、期間(暦年か年度か)、目標値の有無、担当者数と月あたりの件数

ここで大切なのは、AIが設計を出すと同時に、自社の条件を質問してきたことです。 質問に答えれば、設計が自社向けに調整されます。

設計が固まったら、次に、入力する項目を絞ります。 手元にある営業データの様式(サンプルを数行)をAIに見せて、次のように頼みます。

これが、今の当社の売上データの様式(サンプル数行)です。
先ほどの設計に合わせて、入力するのは必要最低限の項目だけにしたい。
項目の削り方と並べ方を、理由つきで提案してください。

このように、AIと対話しながら、レイアウトと入力する項目を整えていくのが、最も確実な進め方です。

決算書や月次報告のような最終的な様式が同じでも、日々の売上データに含まれる項目は、会社ごとに違います。 AIの設計は、あくまで雛形です。自社のデータの様式に合わせて、柔軟に調整してください。

練習問題

進め方は全問共通です。

  1. 素材を読み、プロンプト設計シートの5要素を自分で埋める(AIはまだ使わない)
  2. 埋めた内容をもとにプロンプトを書き、普段使うAIで実行する
  3. 出力をルーブリックで自己採点する
  4. 解説を開き、自分の設計と比べる

練習用のサンプルファイル(Excel)

この章の実例と、問1〜問4は、すべて営業課の売上データで練習します。 そのデータを、Excelファイルにして、ZIPにまとめました。

ch5-sample-files.zip をダウンロード(約6KB)
  • 必要な人だけ、ダウンロードして使ってください
  • ご自身の職場の実際のファイルで練習する場合は、このZIPは必要ありません。その場合は、氏名や金額などを、伏せてから使います
  • ZIPの中には、説明のREADME.txtと、Excelファイル(ch5-sales-sample.xlsx)が入っています
  • Excelファイルには、2つのシートがあります
    • 「売上明細」:営業課の9月の売上(6行)。実例・問1・問2・問4で使います
    • 「前月比」:担当者別の8月と9月の売上(4行)。問3で使います
  • Googleスプレッドシートで使う場合は、Googleドライブにアップロードして開きます

売上明細シートは、次のとおりです(E列の取引先を含みます)。 文字を貼り付けても、セルに分かれないので、Excelファイルを使うのが確実です。

日付        部門     担当   売上(円)  取引先
2026/9/1   営業1課  山田   120000     株式会社ミナト商会
2026/9/1   営業2課  井上   80000      (株)北斗商事
2026/9/2   営業1課  中村   45000      ミナト商会(株)
2026/9/3   営業2課  井上   60000      北斗商事 株式会社
2026/9/3   営業1課  山田   30000      株式会社北斗商事
2026/9/4   営業2課  佐藤   95000      ホクト商事

問1 担当者別の売上を集計する

状況:上の売上表から、担当者別の売上合計を求める表を作ります。

成果物:担当者別の合計を出す数式(山田・井上・中村・佐藤の4人分)と、検算の方法。

ルーブリック(自己採点)
  • 数式が、表の列構成(C列が担当、D列が売上)に合っている
  • 実際に試して、山田150000、井上140000、中村45000、佐藤95000になった
  • 4人の合計が、表全体の合計(430000)と一致することを確認した
  • プロンプトに、列構成とサンプル行を含めた
  • 数式を、下の行にコピーしても崩れないよう、範囲の固定($)について指示または確認した
よくある失敗と解説

シンプルな問題ですが、ここで範囲の固定が重要になります。 数式を下の行にコピーすると、範囲もずれていくことがあります。 たとえば、D2:D7をD$2:D$7のように固定しないと、2人目以降の集計で範囲がずれて、データが漏れます。

プロンプトの制約に、「数式は下の行にコピーしても正しく動くようにする」と入れてください。 検算は、「担当者別の合計を足した数」と「表全体の合計」の一致で行います。 この照合は、集計の漏れを見つけるための、基本的な方法です。

問2 表記ゆれのあるデータを、整える

状況:売上明細の「取引先」の名前が、入力する人によって、バラバラになっています。取引先ごとの売上を集計するために、表記を統一します。

成果物:表記を統一する方法(数式または変換表)と、取引先ごとの売上合計、検算の方法。

売上明細のE列(取引先、2〜7行目)を使います。統一する正式名は、次の2つです。

株式会社ミナト商会
株式会社北斗商事

E2:株式会社ミナト商会
E3:(株)北斗商事
E4:ミナト商会(株)
E5:北斗商事 株式会社
E6:株式会社北斗商事
E7:ホクト商事
ルーブリック(自己採点)
  • 「元 → 正式名」の対応を、入出力の例としてプロンプトに含めた
  • 元のデータ(E列)は残し、別の列に変換結果を出す方法にした
  • 6行のうち、5行は数式で正式名に統一され、7行目の「ホクト商事」だけが、数式では直らない例外として挙げられた
  • 7行目は、対応表(「ホクト商事」→「株式会社北斗商事」など)で対応する方針にした
  • 統一後の取引先ごとの合計が、ミナト商会165,000円、北斗商事265,000円になった
  • 2社の合計(430,000円)が、表全体の合計と一致することを確認した
  • 大量のデータの場合は、AIに全行を直接変換させず、変換のルール(数式や変換表)を作らせる方針にした
答え合わせ用:正解の数字
行元の取引先統一後売上(円)
2株式会社ミナト商会株式会社ミナト商会120,000
3(株)北斗商事株式会社北斗商事80,000
4ミナト商会(株)株式会社ミナト商会45,000
5北斗商事 株式会社株式会社北斗商事60,000
6株式会社北斗商事株式会社北斗商事30,000
7ホクト商事株式会社北斗商事(対応表で統一)95,000
  • ミナト商会の合計:120,000+45,000=165,000円
  • 北斗商事の合計:80,000+60,000+30,000+95,000=265,000円
  • 2社の合計:430,000円(表全体の合計と一致)
  • ルールだけで統一して、7行目を「要確認」のままにすると、北斗商事は170,000円になり、2社の合計は335,000円になります。表全体(430,000円)と95,000円の差が出るので、7行目の漏れに気づけます
よくある失敗と解説

表記ゆれの修正で、最もやってはいけないのは、数百行のデータを、AIに直接貼って変換させることです。 行が多いと、AIは一部を飛ばしたり、勝手に書き換えたりします。しかも、気づきにくい。

安全な進め方は、次のとおりです。

  • 数行のサンプル(入力と、期待する出力の例)をAIに渡す
  • 「この変換を実現する数式(またはルール)を作って」と頼む
  • 数式を、自分の表の全行に適用する

AIには、全行を処理させず、「処理のルール」を作らせます。 ルールを自分のシートで実行すれば、結果が再現でき、確認もできます。

今回の例には、7行目の半角カナ「ホクト商事」のように、ルールで直せない行があります。 全角にそろえても、「ホクト商事」で、「北斗商事」とは別の文字列です。 カナから漢字への対応は、数式では判定できません。

このような例外は、対応表(変換表)を別に作るほうが確実です。 この問題を、AIで試したところ、5行は数式で直り、7行目だけを「数式では直せない。同一の取引先かどうかは、人が判断する」と、正しく分けて示しました。 対応表を作る案と、件数や売上の整合を確かめる検算まで、提案していました。

取引先ごとの合計の検算では、2社の合計が、表全体の合計と一致するかを見ます。 例外を見落とすと、この照合で、食い違いとして現れます。

問3 前月比を計算し、注意が必要な行に印を付ける

状況:担当者別の売上の、前月比を出します。前月比が-10%以下の場合は、「要確認」と表示させたいと考えています。

成果物:前月比の数式と、「要確認」の判定の数式。分母が0のときの扱いも決める。

Excelファイルの「前月比」シートを使います。9月の売上は、問1で求めた担当者別の合計と同じです。

担当者   8月     9月
山田     120000  150000
井上     130000  140000
中村     60000   45000
佐藤     0       95000

(A列が担当者、B列が8月、C列が9月。1行目は見出し、2〜5行目がデータ。佐藤さんは、9月に営業課へ配属されたため、8月の売上は0円です)

ルーブリック(自己採点)
  • 前月比が、山田+25.0%、井上+7.7%(約)、中村-25.0%になった
  • 中村さんだけが、「要確認」と表示された
  • 佐藤さん(前月0円)で、エラー(#DIV/0!)にならず、「前月0円のため算出不可」などの表示になった
  • 前月比の計算式を、自分で確認した((9月-8月)÷8月)
  • プロンプトに、「分母が0の場合の扱い」を、制約として入れた
  • 9月の売上が、問1で求めた担当者別の合計(山田150,000、井上140,000、中村45,000、佐藤95,000)と一致することを確認した
答え合わせ用:正解の数字
担当者計算前月比判定
山田(150,000-120,000)÷120,000+25.0%(なし)
井上(140,000-130,000)÷130,000+7.7%(約)(なし)
中村(45,000-60,000)÷60,000-25.0%要確認
佐藤前月が0円前月0円のため算出不可(なし)
よくある失敗と解説

この問題の核心は、例外の扱いです。 佐藤さんの8月は0円なので、そのまま割ると、エラー(#DIV/0!)になります。

AIに何も伝えずに依頼すると、エラーになる数式が返ってくるか、あるいはIFERRORで「エラーを黙って隠す」数式が返ってきます。 エラーを隠すと、なぜ計算できなかったのかが分からなくなります。

制約に、「前月が0円の場合は、『前月0円のため算出不可』と表示する」のように、どうしてほしいかを書いてください。 AIが数式を作る前に、「他に考慮すべき例外はありますか」と聞かせるのも有効です。 空欄、マイナス、文字列の混入など、AIが気づいた例外を、事前に洗い出せます。

この問題を、AIで試したところ、次のような数式が返ってきました。

前月比:=IF(B2=0,"前月0円のため算出不可",(C2-B2)/B2)
判定 :=IF(ISNUMBER(D2),IF(D2<=-0.1,"要確認",""),"")

IFERRORを使わず、0の場合をIFで分けていたので、ほかの原因のエラーは隠れずに表示されます。 検算として、各行の期待される結果の一覧と、境界の値(ちょうど-10%)で判定が変わるかの確認方法も、提案されていました。 この2つの数式を、実際に計算して確かめたところ、上の答え合わせの表と、すべて一致しました。

問4 AIが出した数式の、誤りを見抜く

状況:同僚がAIに作らせた、部門別合計の数式が、あなたに回ってきました。チェックを頼まれています。

成果物:数式の誤りの指摘と、検算の方法、AIに修正させるプロンプト。

対象の表は、Excelファイルの「売上明細」シートです(2〜7行目がデータ、B列が部門、D列が売上)。

AIが作った数式:

営業1課の合計:=SUMIF(B2:B6, "営業1課", D2:D6)
営業2課の合計:=SUMIF(B2:B6, "営業2課", D2:D6)
ルーブリック(自己採点)
  • 範囲が、2〜6行目までになっており、7行目(営業2課 佐藤 95000)が漏れていることを指摘できた
  • 営業1課は195000で正しく、営業2課は140000(正しくは235000)になることを確認した
  • 営業1課の結果だけを見ていたら、誤りに気づけなかったことを理解した
  • 「各部門の合計を足した数」と「表全体の合計(430000)」を照合する検算を、自分で設計した
  • 修正のプロンプトに、表の範囲(2〜7行目)と、期待する結果(195000と235000)を含めた
よくある失敗と解説

この誤りの怖いところは、一部の結果だけは、正しく見えることです。 営業1課は、範囲から漏れた7行目が営業2課の行だったので、たまたま正しい値になります。 1つだけ確認していたら、誤りに気づけません。

検算は、次の方法で行います。

  1. すべての部門の合計を、足す(195000+140000=335000)
  2. 表全体の合計(430000)と、照合する
  3. 一致しなければ、どこかの範囲が漏れていると、判断できる

修正を依頼するときは、正しい範囲と、期待する結果を渡します。

以下の数式は、範囲がずれている可能性があります。売上表の範囲は2〜7行目です。

**期待する結果**
営業1課:195000、営業2課:235000

**依頼**
1. 数式の誤りを指摘してください
2. 修正した数式を出してください
3. 修正後、2つの部門の合計が、表全体の合計(430000)と一致することを確認する手順も示してください

プロンプト設計の確認問題

ここまでの内容を、選択式で確認しましょう。

問1. 「売上を条件つきで合計する関数を教えて」とAIに聞いたところ、自分の表の列と合わない数式が返ってきた。最も大きな原因はどれか。

問2. 数百行の取引先名の表記ゆれを統一するときの進め方として、最も適切なものはどれか。

問3. 前月比の計算で、前月の値が0の行があり、割り算のエラーが出る可能性がある。プロンプトでの対応として最も適切なものはどれか。

問4. AIが作った部門別合計の数式が、範囲の漏れを含んでいないかを確認する検算として、最も適切なものはどれか。

繰り返し使う制約は、AIに登録して短くする

この章のプロンプトは、制約を毎回書き込む形で練習しました。 同じ業務を繰り返すなら、変わらない制約は、AIにあらかじめ登録しておくことで、依頼を短くできます。

この章で登録しておくとよいのは、使うソフト(Excel/スプレッドシート)、空欄や0などの例外時の扱い、検算の方法を出力させる指示です。 ChatGPT・Claude・Geminiでの登録手順は、生成AIに社内ルールを覚えさせるスキル設定のやり方で解説しています。 登録しても、最終確認は人が行うことに変わりはありません。

自分の職場に置き換える

この章の型を、自分の仕事に当てはめます。

  1. 普段使っている表を1つ選び、集計や整理でやりたいことを1つ決める
  2. 実際のデータを使う場合は、氏名・金額などを、ダミーに置き換えた5〜10行のサンプルを作る
  3. 「サンプル行」と「期待する結果」を書き、AIに数式を作らせる
  4. 出力された数式で、期待する結果と一致するかを確かめる。一致しなければ、その結果をAIに伝えて修正させる

仕上げに、S.E.L.F.ループの「F(Forge it)」として、数式が、何をしているかを、自分の言葉で説明してみてください。 説明できない数式は、他の人が引き継げません。

応用編:入力そのものを、自動化する

データを入れるシートを作っても、毎回手で入力していては、以前と効率が変わりません。 営業データや経費の計算では、入力の手間そのものを、自動化することも考えられます。

たとえば、次のような流れです。

  • 領収書や明細を、スマートフォンで撮影して、社内のクラウドやチャットツール(Slackなど)の、決まった場所にアップロードする
  • 決まった時刻になると、スクリプトが、新しい写真を集める
  • OCR(画像の中の文字を読み取る技術)で、日付や金額などの数字だけを取り出す
  • 取り出した数字を、シートの決まった列に、1行ずつ追加する
  • 人が、読み取り結果を確認する

画像から数字を読み取る方法は、大きく2つあります。

方法良い点注意点
生成AIに、画像を直接読ませる様式がバラバラでも、柔軟に読める画像が多いほど、利用量が増えて、費用がかさむことがある(料金体系による)。読み取り結果に、ゆらぎが出る
OCRのスクリプトやツールを作る自社の様式に特化すれば、安く、安定して動く作る手間がかかる

後者のスクリプトは、生成AIに作ってもらえます。 「こんなシステムを作りたい」とAIに提案し、対話しながら要件を詰めていけば、自社の様式に特化したツールを作れる場合があります。 従来は、システム開発会社や専任のエンジニアに依頼すると、規模によっては数百万円から、大きければ1,000万円を超える予算が必要になることもありました(目安です)。 小さな範囲であれば、AIとの対話だけで作れる可能性があります。

ただし、次の点に注意してください。

  • OCRの読み取りは、必ず間違うことがある:金額の桁、日付の読み違いに備えて、合計の照合や、読み取り結果の目視確認を残す
  • 領収書には、取引先名や個人名が含まれる:社内のAI利用ルールと、アップロード先のアクセス権限を確認する
  • 領収書を、経理の証憑として写真で保存する場合は、電子帳簿保存法などの要件を、経理の担当者に確認する
  • 自動化しても、最終確認は人が行う

このようなツールの作り方は、次の章で詳しく扱います。

この章のまとめ

  • 表計算の依頼は、ソフトの種類・列構成・行の範囲・サンプル行を渡す
  • 「サンプルデータ+期待する結果」を示すと、AIは正確な式を作りやすい
  • 大量のデータは、AIに直接変換させず、処理のルール(数式)を作らせる
  • 空欄・0・表記ゆれなどの例外の扱いは、制約として書く
  • 検算は、部分の合計と全体の合計の照合など、漏れを見つける方法で行う

次の章では、コードや簡易ツールの作成を題材に、動くものを小さく作り、エラーを直す進め方を練習します。