スプレッドシートとAIを連携する方法|Geminiと外部APIの選び方

スプレッドシートにAIを取り入れるなら、スプレッドシート内のGeminiを使う方法と、外部のAIサービスと連携する方法を分けて考えます。表の中で数式やデータについて相談したいのか、決めた範囲を別のサービスへ送り、結果を表へ戻す仕組みが必要なのかで、準備が変わります。

どちらの方法でも、入力してよいデータの確認が必要です。まず利用条件を確かめ、下の架空データ5行で数式の対象範囲や空欄の扱いを試しましょう。外部APIについては、送信・書き戻し・失敗時の対応を決めるための確認事項を扱います。接続用のコードや、自動運用の実装手順は含みません。

表の中で相談するか、外部サービスにつなぐかを決める

スプレッドシートでAIを使う方法:作業に合う選択肢と確認事項

まず、AIに任せたい作業を決める

  • 数式だけで集計できる場合既存の数式を使う

    AI連携を作る必要はありません。

  • 表を開きながら相談したい場合スプレッドシート内のGeminiを確認

    対象機能、契約プラン、組織での利用可否、ファイル形式を確認します。提案された内容は元の表と照合します。

  • 別のAIサービスが必要な場合外部APIによる連携を検討

    社内の送信許可を確認し、読み取る範囲、送る情報、結果の書き戻し先を決めます。自動実行には別途設計が必要です。

機能が表示されない場合は、まずプランや管理設定を確認してください。代わりに別サービスへ実データを送る前にも、社内の許可が必要です。

やりたいこと別の確認先
やりたいこと最初に確認すること
数式や表の作成案を、表を開きながら相談するスプレッドシート内のGeminiで対象機能を使えるか。
別のAIサービスへ決めた範囲を送り、結果を戻す社内の送信許可と、外部APIを使う必要性・接続方法。
既存の数式で集計できる作業を済ませるAIとの連携を作らず、通常の数式だけで足りるか。

Google スプレッドシートのGeminiには、数式や表の作成などを支援する機能があります。[1] 依頼した結果が業務上正しいかどうかは、元の表と照らして判断してください。

別のAIサービスを使う必要がある場合は、Google Apps Scriptを使った連携も検討先です。Apps ScriptはGoogleのサービスを操作するためのプログラム環境で、外部にHTTPリクエストを送る機能としてUrlFetchAppが用意されています。[2] 表のどの範囲を読み、何を送り、返ってきた情報をどこへ書くかを、自分たちの処理として設計します。

「自然な言葉で相談すること」と「繰り返しの処理を自動実行すること」は、分けて考えましょう。数式を一度提案してもらいたいだけなら、先に定期実行の仕組みまで作る必要はありません。外部AIの選定が必要な理由も含め、対象にする作業を一つに絞ります。

Geminiは利用条件とファイル形式を確かめてから試す

Geminiを試す前の確認と操作の流れ(公式ヘルプ[1]に基づく)
  1. 条件対象プラン・組織の利用可否・入力可能な情報を確認
  2. 準備Excelは元を残し、検証用コピーをGoogle スプレッドシート形式で保存
  3. 操作パソコンで表を開き、「Geminiに相談」を選ぶ
  4. 結果の確認提案された式や表を元の表と照合。形式変更後の数式と表示も比べる

Googleの公式ヘルプでは、スプレッドシートでGeminiを使うために、対象となるGoogle WorkspaceまたはGoogle AIプランが必要とされています。[1] すべてのアカウントで同じ機能を無償利用できるとは限りません。管理者がいる環境では、組織での利用可否も確認してください。

パソコンで対象のスプレッドシートを開き、「Geminiに相談」から操作するのが公式に案内されている経路です。Excel形式のファイルを使っている場合は、Google スプレッドシート形式で保存する必要があります。[1] 元のExcelファイルを残したまま検証用のコピーを用意すると、形式を変えた後に数式や表示を比べられます。

Geminiを使う場合も、入力してよい情報かどうかの確認は必要です。顧客名、連絡先、個人情報や機密情報を、そのまま動作確認に使うのは避けましょう。機能が表示されないときは、別の外部サービスへ実データを送り直す前に、プランや管理設定などの利用条件を確認します。

架空の5行で、数式と未入力の扱いを確かめる

総務の合計を求める例:既知の金額は3000、S05の金額は未確認
入力 A1:C6
1行目は見出し、2〜6行目はデータ
条件 B2:B6
部門が「総務」の行を判定
合計 C2:C6
条件に合う行の金額を合計

=SUMIF(B2:B6,"総務",C2:C6)

  1. S01・総務1000 を含める
  2. S02・営業2000 は含めない
  3. S03・総務2500 を含める
  4. S04・総務返金 −500 も含める
  5. S05・総務C6は空欄の想定。値を推測しない
入力済みの金額の合計1000 + 2500 − 500 = 3000
別途確認する金額S05は金額未確認。0円確定ではありません。

B2:B5までを対象にする、返金を除外して3500とする、空欄を0円確定にする説明は依頼どおりではありません。

最初は、正解を自分で確認できる小さな表を用意します。次の例をA1:C6に置く想定です。1行目が見出し、2〜6行目がデータに当たります。

架空入力 A1:C6:C6は空欄の想定
ID部門金額
S01総務1000
S02営業2000
S03総務2500
S04総務-500
S05総務未入力

この表は説明用の架空データです。試す際は、表中で「未入力」と示したC6を空欄にしてください。「未入力」という文字をセルに入れる想定ではありません。

総務の金額を合計する数式の期待例は、=SUMIF(B2:B6,"総務",C2:C6)です。SUMIFは指定した条件に合う行の値を合計する関数です。[4] 部門を見る範囲がB2:B6、合計する範囲がC2:C6になっているかを、列名と合わせて確認します。

入力済みの金額の合計は3000です。S05の金額は未確認なので、合計の確認とは別に調べます。空欄を0円と確定したものとして扱わないでください。

表の内容を示したうえで、依頼文は次のように組み立てられます。

A1:C6は架空の検証用データです。B列が「総務」の行について、C列の合計を求める数式を提案してください。元の表を変更せず、金額が未入力のIDを別に挙げてください。返金の負の金額も含め、空欄の値は推測しないでください。

確認するのは、数式、合計額、未入力のIDです。もっともらしい説明が返ってきても、対象範囲がB2:B5までになっていたり、返金を除いて3500としていたりすれば、依頼どおりとはいえません。元の入力と、提案された式や説明を見比べます。

この集計は、AIを使わずSUMIFだけでも求められます。AIに相談する練習では、正しい式が返るかに加え、指定範囲、返金、空欄を説明どおりに扱っているかを確かめてください。この式と合計3000は、架空の表から求めた答え合わせ用の例です。

外部APIでは、送信範囲と失敗した後の扱いを先に決める

外部API連携の設計チェック:送信前・書き戻し・途中で止まったとき
  1. 送信前:二種類の許可を確認

    Google側で外部リクエストが許可されても、社内の送信許可を得たことにはなりません。送信先、対象の列と行、閲覧・編集・実行の権限を確認します。

  2. 入力:必要な範囲だけ

    総務の合計だけなら顧客氏名やメールアドレスは不要。認証情報をセルや共有文に貼らない。

  3. 出力:別列・別シートで照合

    元データへすぐ上書きせず、行ID、元の値、返答を見比べます。書き戻し先が空いているか、同じIDを二度処理していないかも確認します。

  4. 途中で止まったら、完了した範囲を確認

    行IDごとに「未処理」「確認待ち」「確定」などを記録する設計が考えられます。エラーが出ても、一部は書き込まれている可能性があるため、すぐに全件を再送しません。

条件が決まった場合

料金・上限・保存条件・送信したデータの再利用条件・戻し方を確認し、少量から検証。

許可や料金上限が未決の場合

実データを送らず検証用コピーにとどめる。

Apps Scriptは割り当てを超えると処理が止まる場合があります。外部AIの料金や上限は別の条件なので、使うサービスごとに確認してください。

外部サービスに処理を依頼する窓口をAPIと呼びます。Apps ScriptのUrlFetchAppを使う場合、公式資料には外部リクエスト用の認可範囲が必要と記されています。[2] 実行を許可する前に、どのサービスへ何を送る処理なのかを確認してください。Google側の許可と、社内でその情報を送ってよいかの判断は別です。

たとえば総務の金額を合計するだけなら、顧客の氏名やメールアドレスまで送る必要はありません。外部へ送る列と行を明示し、必要のない項目を含めない設計にします。表を誰と共有するかと、外部APIの認証情報を誰が扱うかは、それぞれ決めます。閲覧・編集・実行の権限も、担当者と確認してください。認証情報をセルや共有用の説明文に貼ることは避けてください。

返答を受け取った後も、元データへすぐ上書きする設計にはしません。検証段階では別の列やシートに結果を置き、対象行のID、元の値、返ってきた値を照合する方法が考えられます。書き戻す列が空か、同じIDを二度処理していないかも、確認項目に入れます。

Apps Scriptには日次の割り当てや実行制限があり、超過すると例外が発生して処理が止まる場合があります。上限は変更され得るため、本番設計時には公式の割り当て表を確認します。[3] 外部AI側の料金、送信量、保存条件、送信したデータの再利用条件や利用規約は、選ぶサービスについて別途確認が必要です。認証情報の保管方法も実装担当と決めます。無料枠や上限値はサービスによって異なるため、契約時の条件を確認してください。

途中で止まった処理をやり直すときは、対象範囲をそのまま再送する前に、どこまで完了したかを確認します。たとえば行IDごとに「未処理」「確認待ち」「確定」を記録するのは、実行管理の設計例です。エラーになったことだけを根拠に、結果が一つも書かれていないとは判断しません。

検証結果と未確認事項を残して、運用担当へ引き継ぐ

数式の相談では、架空の5行を使って空欄や返金を含む結果を確かめます。外部API連携を作る場合は、重複IDや処理途中の停止も試験項目として実装担当へ渡します。検証前に期待する結果を決めておくと、誤りが式の提案にあるのか、入力範囲や書き戻しの処理にあるのかを切り分けやすくなります。

本番利用を判断する際は、入力可能なデータ、閲覧・実行の権限、利用料金と上限、誤処理から戻す方法を担当者間で確認します。元の表のコピーを保ち、少量で始めて費用と制限、書き戻した結果を確認してから、反映する範囲を広げてください。少量の例が合ったことは、大量のデータや別の業務でも正しく動く証明にはなりません。

運用担当へ引き継ぐときは、使う式や処理の版、対象範囲、期待値と確認結果、未確認の項目、反映先、戻すための元ファイルを一緒に残します。今回の例なら「既知の合計は3000、S05は金額未確認」の両方を渡し、未確認を0円として扱わないでください。利用許可や料金上限が決まっていなければ、実データを送らず検証用のコピーにとどめます。

通常の数式だけで済むなら、AI連携を作る必要はありません。AIを使う場合は、任せたい作業を一つに絞ります。数式の相談で足りるならGeminiの利用条件から、外部サービスが必要なら送信範囲や実行管理から確かめます。小さな表で入力と期待する結果を照合し、実データを使う前に権限・費用・戻し方を判断しましょう。

参照資料

機能・利用条件に関する確認日:2026年10月16日。契約や提供条件は利用時に公式情報を再確認してください。架空データの数値は、集計結果の照合を説明するための計算例です。

  1. Google ドキュメント エディタ ヘルプ「Google スプレッドシートでGeminiを使用して共同編集する」
  2. Google for Developers「Class UrlFetchApp」
  3. Google for Developers「Quotas for Google Services」
  4. Google ドキュメント エディタ ヘルプ「SUMIF」

著者について

松本大輔

Re-BIRTH株式会社 代表取締役社長。

著書