アンケートの「その他ご意見」欄を前に、小さくため息が出る
アンケートやイベントの感想で、いちばん大事なのは「自由記述」だと思っています。その他ご意見、感想、ひとことコーナー。数字では出てこない、生の声がそこにある。だから——開く前から、もう、小さくため息が出る。だって、全部読まなきゃ、と思うんです。でも、列をスクロールすると、数十件、ときには数百件。上から一つずつ開いて読んでいくと、途中で心が折れる。「あとでまとめて読もう」とタブを閉じて、そのまま何週間も経つ。
白状すると、これを何週間も放置していたのは、ほかでもないわたしです。せっかく寄せてもらった声を、活かしきれていない。その小さな罪悪感だけが、ずっと胸に残っていました。この「読めてないな」という感じ、心当たりがある人もいると思います。
結果から言います。アンケートの自由記述が、テーマ別に分類・集計されて表1枚にまとまる
やることは、もう、ほとんどありません。自由記述がずらりと並んだ列を読み込ませると、新しいシートが1枚できあがります。中身は——AIが声を5〜7個のテーマに勝手に仕分けてくれて、テーマごとに「だいたい何件あったか」「代表的な声が2〜3件」、そして最後に「全体の要約」。
たとえば、こんな表が向こうから出てきます(中身はぜんぶ架空のダミーです)。
| テーマ | 件数(目安) | 代表的な声 |
|---|---|---|
| 会場・設備への要望 | 18 | 「席が少し狭かった」「空調が寒かった」 |
| 内容がよかった | 14 | 「具体例が多くて分かりやすかった」「明日から使えそう」 |
| 時間配分への意見 | 9 | 「後半が駆け足だった」「もう少し質疑の時間がほしい」 |
| 受付・案内について | 7 | 「入口が分かりにくかった」 |
| 次回への期待 | 6 | 「ぜひ続編をやってほしい」 |
| 資料の改善希望 | 4 | 「配布資料の字が小さかった」 |
表の下には、こんな「全体の要約」も付いてきます。
全体としては内容への満足度が高い一方、会場の広さ・空調や時間配分への要望が目立ちました。次回は設備面の見直しと、質疑時間の確保を検討すると、より満足度が上がりそうです。
一つずつ読まなくても、「どんな意見が、だいたいどれくらいあったのか」が、ひと目で分かる。元の回答シートは消えません。動かしもしません。1文字も書き換えません。読むだけです。
ひとつだけ正直に。この「件数」は、AIがざっと数えた目安です。きっちり1件ずつ集計した正確な数ではないので、「会場の話は多めだったな」くらいの温度感で受け取ってください。正確な数が必要なときは、気になったテーマだけ元のシートで数え直せば大丈夫です。

今日の一点:新しいのは「要約」じゃなく「分類・集計」だけ
前回までは「要約」でした。長いメールを3行+やることリストに。たくさんの未読を、毎朝1通に。——どれも「まとめる」話です。今日の新しいことは、そこから一歩だけ進んで「分類・集計する」。たくさんの声を、テーマごとの山に分けて、それぞれ何件あるかまで整理する。やることはこの一点だけです。要約に慣れたら、次はこれ。順番どおりに進めば、ちゃんとたどり着けます。
分類まで一歩進んだ今回も、わたしはコードを一行も書いていません。書いたのはAIで、わたしは「貼って、許可しただけ」。それが、このブログのいつものやり方です。
同じものを作る:AIに渡すプロンプト(中身は読まなくて大丈夫)
仕組みは自分で作りません。対話AI(ChatGPTなどのチャット相手)に、次の文章をそのままコピペして頼むだけです。——中身は読めなくて大丈夫。「こういうものが欲しい」と書いてあるだけです。
Google Apps Script で、次のことを自動でする仕組みを作ってください。コードは全部あなたが書いてください。わたしはコードが読めない前提でお願いします。
1. スプレッドシートの、指定した1列(自由記述の回答)を、1行目の見出しを除いて全部読み取る。どのシートのどの列かは、コードの分かりやすい場所で変えられるようにする。
2. 集めた自由記述をまとめて Gemini(無料で使えるAPI。モデルは gemini-2.5-flash を指定)に渡し、「これらの意見を5〜7個のテーマに分類し、各テーマの『件数』と『代表的な声を2〜3件』、最後に全体の要約を出してください」と頼む。GeminiのAPIキーは、コードに直接書かず、スクリプトプロパティに保存して読み込む。
3. その結果を、新しいシート(例:「分類結果」)に、テーマ・件数・代表的な声の表として書き出す。
4. 自由記述が多すぎる場合は、最新200件までにする(無料枠を一気に使わないため)。
5. 元の回答シートは絶対に変更しないでください。やるのは「読む」と「新しいシートに書く」だけ。
6. Geminiの呼び出しが混雑(503)や割り当て超過(429)で失敗したら、数秒待って2〜3回やり直す処理も入れてください。あわせて、APIキーをスクリプトプロパティに入れる手順と、初回の許可・実行の手順も、コードが読めない人向けに一つずつ教えてください。
入力になるのは「自由記述が入った1列」です。Googleフォームの回答シートの「その他ご意見」列が代表例ですが、自分で手で作った任意のシートの1列でも、まったく同じように動きます。指定した1列を読むだけだからです。あとは出てきたものを貼り付けて、初回だけ許可して、1回実行するだけ。「貼って、許可しただけ」——これが、このブログのいつものやり方です。
つまずき先回り
①「スプレッドシートを見る」許可が、初回だけ出ます
初めて実行するとき、一度だけ許可の画面が出ます。やっていることは「自分のシートを、自分のAIが読んで、新しいシートに書く」だけ。怖くありません。出てくる画面とボタンを押す順番は、第3回にぜんぶ写真つきでまとめました。一度通れば、次からは出ません。
②自由記述には、思わぬ「個人情報」が紛れています
ここは今日のいちばん大事なところです。自由記述って、書く人が自由に書ける欄なので、本人の名前や連絡先、ときには社外秘っぽい話まで、ぽろっと混ざっていることがあります。AIに渡すのは「自由記述のテキストだけ」ですが、渡す前にひと呼吸おいて、「これは外のAIに見せていい内容だろうか」と一度だけ考える。心配な列や回答があるなら、外す。その線引きは、自分の手で持っておく。「なんとなく不安かも」と感じたら、その感覚のほうが正しいです。
③「順番待ち」や「混雑」で止まっても、壊れていません
たまに、AIがすぐに答えを返してくれないことがあります。でも、ほとんどの場合、壊れたわけではありません。無料で使わせてもらっている順番待ちか、向こうが少し混んでいるだけです。
ひとつは「割り当て」の順番待ち。作りたてのキーは、最初は無料の枠がまだ用意されていないことがあって、一拍おくと使えるようになります。このとき、プロンプトで指定した無料のAIのまま、少し待つのがコツです。もうひとつは、ただの「混雑」。アクセスが集中していると一時的に返事が遅れるので、数秒おいて2〜3回やり直せば、たいてい通ります。プロンプトには、この「数秒待ってやり直す」を最初から仕込んであるので、多くは自動で乗り越えてくれます。
件数が多いほど呼び出しも増えるので、上限(例:最新200件)を決めておくのが、無料枠の保険になります。これは「200件までしか分類できない」という意味ではなくて、一気に使いすぎないためのブレーキ。件数が増えれば、この数字はあとから調整できます。
もう一つだけ、安心のために。作りたてのアカウントは、使い始めた直後にGoogle側の自動チェックでアクセスが止まることがあります。これは不正ではなく、ただの様子見(誤検知)。設定画面から再審査をお願いすれば戻せます。あわてなくて大丈夫です。
数字と、正直な気持ち
これまで、200件の自由記述に目を通すのは、まとまった時間を覚悟して半日仕事でした。それが、仕分けられた1枚の表をながめる数分に変わりました。消えたのは時間だけじゃなくて、「あの声、ちゃんと読めてないな」という、ずっと胸にあった負債感のほうでした。
正直に言うと、AIの仕分けは完璧ではありません。テーマの切り方はそのときどきで少し変わるし、件数もきっちり数えた数ではなく、あくまでAIがざっと出した目安です。「会場への要望」と「次回への期待」のどっちにも入りそうな、際どい1件もあります。きっちり統計的に正確、というものではない。あくまで「ざっくりの地図」です。でも、それでいいと思っています。一つずつ読む前に、全体の地図を1枚もらう。気になったテーマだけ、元のシートで原文を開けばいい。半日かけて迷子になっていたところに、入口の看板が立った。それだけで、ずいぶん楽になりました。
次回予告:登録したキーワードのニュースを、毎朝LINEに
今日は「たまった自由記述を、AIでテーマ別に分類・集計する」でした。次回は、毎朝の話に戻ります。気になるキーワードを登録しておくと、それに関するニュースが、毎朝LINEに届く。情報を「取りに行く」のをやめて、向こうから来てもらう仕組みです。コードが書けなくても、AIに任せて、同じところへたどり着けます。
→ その回を公開しました:登録キーワードのニュースを、毎朝LINEに
このシリーズのこれまで:創刊号(入口)/記事01:フォーム回答をメールで受け取る/記事02:フォーム回答をLINEに即時通知/記事03:フォーム回答を毎朝自動集計してLINEに通知/記事04:名簿から差し込みメールを一斉送信/記事05:長いGmailをAIで3行+やることリストに/記事06:毎朝、未読メールを自動で要約して1通に/記事07:たまった自由記述を、AIでテーマ別に分類・集計(この記事)/記事08:登録キーワードのニュースを、毎朝LINEに/応用編その1:AI秘書「ぽけっと手帳」(全体像)/応用編その2:リサーチ秘書(追いたい分野のニュースが毎朝1通)/育てる編①:ためた見出しに"質問"できる(台帳Q&A)/育てる編②:「医療も追って」で集める分野を増減(設定変更)/育てる編③:「今週どうだった?」でためた台帳を週次まとめ/育てる編④:「地図にして」でためた見出しを放射状の地図に(見出しマップ)/育てる編⑤:「再エネ政策を追いたい」で検索語まで含む設定をAIが設計(設定アシスタント・完結)/応用編その3:受発注・請求 秘書(受注が来たら、選ぶだけで見積書・請求書のPDFに)/受発注 育てる編①:入金消込・督促・領収書PDF/受発注 育てる編②:受注した瞬間に在庫を押さえる/受発注 育てる編③:発注点アラートと発注書PDF/受発注 育てる編④:月次集計・売上グラフ・会計CSV(最終回)/基礎編:URLひとつで“自分の申込ページ”を作る(Webアプリ)/基礎編:申し込まれた瞬間に、確認メールが自動で返る/基礎編:申し込んだら、控えのPDFが自動で届く/基礎編:申込の控えが、勝手にドライブへ積み上がっていく/基礎編:申込のひとことを、届いた瞬間にAIが仕分ける/基礎編:誰も画面を開いていないのに、毎朝まとめが届く/基礎編:申込が来た瞬間、ポケットのLINEが鳴る(最終回)/応用編その4:申込・予約 秘書(満席の瞬間、ページが自分から閉まる)/申込・予約 育てる編①:キャンセル待ちと自動繰り上げ/申込・予約 育てる編②:承認制とお断り下書き/申込・予約 育てる編③:前日リマインダーと毎朝まとめ/申込・予約 育てる編④:管理ページ(最終回)
#GAS #スプレッドシート #アンケート集計 #コピペOK



コメント