ChatGPT × スプレッドシートで自動分析する方法

目次

ChatGPT × スプレッドシートで自動分析する方法【回答要約・分類・タグ付け】

Googleスプレッドシートに入力されたデータを、ChatGPTを使って「要約」「分類」「タグ付け」など自動で分析できるようになります。アンケート・日報・顧客の声などを自動で整理できるため、業務の手間が大幅に減ります。

ChatGPT × スプレッドシートでできること

  • テキストを自動要約する
  • コメントを自動でポジ/ネガ分類する
  • タグ付け(話題分類)を自動生成する
  • 長い文章の要点抽出
  • アンケートの自由記述を簡単にまとめる

① 用意するもの

  • Googleスプレッドシート
  • OpenAI APIキー
  • GAS(Google Apps Script)

② GASでChatGPTを呼び出す基本コード

次のコードをGASに貼れば、ChatGPT APIを使ってテキスト分析ができます。

const API_KEY = "YOUR_OPENAI_API_KEY";
const ENDPOINT = "https://api.openai.com/v1/chat/completions";

function analyzeText(prompt) {
  const payload = {
    model: "gpt-4o-mini",
    messages: [{ role: "user", content: prompt }]
  };

  const params = {
    method: "post",
    headers: {
      Authorization: "Bearer " + API_KEY,
      "Content-Type": "application/json"
    },
    payload: JSON.stringify(payload)
  };

  const res = UrlFetchApp.fetch(ENDPOINT, params);
  const json = JSON.parse(res.getContentText());
  return json.choices[0].message.content;
}

この関数を使えば、スプレッドシートの内容をChatGPTに投げて分析結果を返すことができます。

③ テキストを自動で要約する

スプレッドシートのA列に文章、B列に要約を入れる例です。

function autoSummary() {
  const sheet = SpreadsheetApp.getActiveSheet();
  const lastRow = sheet.getLastRow();

  for (let i = 2; i <= lastRow; i++) {
    const text = sheet.getRange(i, 1).getValue(); // A列
    if (!text) continue;

    const prompt = "次の文章を3行で要約してください:\n" + text;
    const summary = analyzeText(prompt);

    sheet.getRange(i, 2).setValue(summary); // B列に要約
  }
}

④ コメントを自動分類する(ポジ / ネガ / 改善点)

アンケートの自由記述を自動で分類できます。

function autoSentiment() {
  const sheet = SpreadsheetApp.getActiveSheet();
  const lastRow = sheet.getLastRow();

  for (let i = 2; i <= lastRow; i++) {
    const text = sheet.getRange(i, 1).getValue();

    const prompt = "次の文章を「ポジティブ / ネガティブ / 要改善」に分類してください。\n文章:" + text;
    const result = analyzeText(prompt);

    sheet.getRange(i, 3).setValue(result); // C列に分類
  }
}

⑤ タグを自動生成する(話題分類)

文章の内容に応じて、AIがタグを自動生成します。

function autoTags() {
  const sheet = SpreadsheetApp.getActiveSheet();
  const lastRow = sheet.getLastRow();

  for (let i = 2; i <= lastRow; i++) {
    const text = sheet.getRange(i, 1).getValue();

    const prompt = "次の文章の内容を3〜5個のタグにしてください。\n文章:" + text;
    const tags = analyzeText(prompt);

    sheet.getRange(i, 4).setValue(tags); // D列にタグ
  }
}

⑥ 自動分析を1つにまとめる(要約+分類+タグ付け)

一括で分析したい場合は、次の統合版がおすすめです。

function autoAnalyzeAll() {
  const sheet = SpreadsheetApp.getActiveSheet();
  const lastRow = sheet.getLastRow();

  for (let i = 2; i <= lastRow; i++) {
    const text = sheet.getRange(i, 1).getValue();

    const prompt =
      "次の文章について、以下を出力してください。\n" +
      "1. 3行要約\n2. 感情分類(ポジティブ / ネガティブ / 要改善)\n3. 内容タグ(3〜5個)\n\n文章:" +
      text;

    const result = analyzeText(prompt);
    sheet.getRange(i, 5).setValue(result); // E列
  }
}

⑦ 実務での活用例

  • アンケート自由記述の自動整理
  • お客様の声を自動タグ付け
  • 日報の内容をカテゴリ分類
  • クレーム内容を要点にまとめる
  • 議事録の要点抽出

まとめ:ChatGPT × スプレッドシートは業務自動化の最強コンビ

GoogleスプレッドシートとChatGPTを組み合わせると、今まで手作業だった「読む・まとめる・分類する」作業が自動化できます。 小さな業務でも、定期的に自動化することで大きな時間削減につながります。

まずは、要約 → 分類 → タグ付けの3つから試してみてくださいね。

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