目次
Contents
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つから試してみてくださいね。
