Googleフォームの回答をGoogle Sheetsで見ていると、営業メール、スパムっぽい回答、社内テスト送信、対象外の問い合わせが混ざります。
このとき、行を削除したくなります。
でも、運用としては最初に削除しないほうが安全です。
今週の回答数がなぜ減ったのか
営業メールは何件あったのか
テスト送信は本番集計に混ざっていないか
除外した判断を後から説明できるか
これらが見えなくなるからです。
この記事では、Googleフォームの回答先スプレッドシートで、営業メールやテスト回答を削除せず 除外 として扱う最小設計をまとめます。
先に結論
回答シートには、少なくとも次の列を追加します。
対応状況
集計対象
除外理由
除外メモ
最終更新日
担当者管理まで入れるなら、これに 担当者 と 次アクション を足します。
| 列 | 目的 |
|---|---|
| 対応状況 | 未対応、対応中、完了、除外を分ける |
| 集計対象 | 通常レポートに入れるかどうかを明示する |
| 除外理由 | 営業メール、テスト回答、重複、対象外などを固定値で残す |
| 除外メモ | 判断に迷った背景を短く残す |
| 最終更新日 | いつ除外判断をしたかを見る |
重要なのは、削除で消すのではなく、通常集計から外すことです。
元の回答行は残す
対応状況は 除外 にする
集計対象は いいえ にする
除外理由を入れる
通常レポートでは 集計対象 = はい だけを見る
この形にすると、回答データと運用判断を分けて扱えます。
なぜ削除しないほうがいいのか
Googleフォームの回答行を消すと、見た目はきれいになります。
ただ、あとで説明しにくくなります。
たとえば、フォームの回答が30件あったとします。
回答総数: 30
正当な問い合わせ: 21
営業メール: 5
社内テスト: 2
重複: 1
対象外: 1
この状態なら、今週の問い合わせ状況を説明できます。
でも、営業メールとテスト回答を削除してしまうと、シートには21件だけが残ります。
すると、後から見た人にはこう見えます。
回答は21件だった
本当は30件届いていて、そのうち9件を運用上外しただけです。
この差は、レポートやフォーム改善で効いてきます。
営業メールが多いならフォーム導線や営業お断り文言を見直す必要があります。テスト回答が混ざるなら、本番フォームと検証フォームの扱いを分ける必要があります。対象外回答が多いなら、フォームの説明文や選択肢が曖昧かもしれません。
削除すると、この改善材料まで消えます。
除外理由は自由入力にしない
除外理由 は、最初から自由入力にしないほうがいいです。
自由入力にすると、すぐに表記ゆれが出ます。
営業
営業メール
売り込み
フォーム営業
sales
営業っぽい
人間には近い意味でも、Sheetsで集計すると別の値です。
まずは固定値にします。
営業メール
スパム
テスト回答
重複
対象外
誤送信
その他
Google Sheetsなら、データの入力規則でプルダウンにしておきます。
実務では その他 を残しておくと便利ですが、増えすぎるなら分類が足りていません。
週次で その他 の中身を見て、よく出る理由を固定値に昇格させます。
対応状況と集計対象は別にする
対応状況 = 除外 だけでも運用はできます。
ただ、レポートやピボットを作るなら 集計対象 を分けたほうが安全です。
対応状況: 除外
集計対象: いいえ
除外理由: 営業メール
この3つは、それぞれ役割が違います。
| 項目 | 役割 |
|---|---|
| 対応状況 | 回答の運用状態 |
| 集計対象 | 通常レポートに入れるかどうか |
| 除外理由 | なぜ外したか |
たとえば、営業メールは通常レポートから外したいです。
一方で、セミナー申込のキャンセル連絡などは、通常の参加者数からは外すが、運用イベントとしては別に見たいことがあります。
状態と集計対象を分けておくと、後からこういう切り分けがしやすくなります。
シートは2種類のビューで見る
回答シートは、全部を1つの表で見ようとするとつらくなります。
最低限、ビューを2つに分けます。
運用ビュー: すべての回答を見る
レポートビュー: 集計対象 = はい だけを見る
運用ビューでは、営業メールやテスト回答も見えます。
これは、フォームに何が届いているかを確認するためです。
レポートビューでは、通常の問い合わせや申込だけを見ます。
これは、業務上の件数や成果を読むためです。
この2つを混ぜると、どちらも読みにくくなります。
全部を消さずに残す
でも、通常レポートには混ぜない
この分離が大事です。
QUERYで通常レポートだけ出す例
Google Sheetsで別シートに通常レポートだけ出すなら、考え方はシンプルです。
たとえば 回答 シートの G列 に 集計対象 があるとします。
=QUERY(回答!A:K, "select * where G = 'はい'", 1)
これで、元データを残したまま、通常集計用のビューだけ作れます。
除外理由別に件数を見るなら、ピボットテーブルでも十分です。
行: 除外理由
値: 回答ID の個数
フィルタ: 集計対象 = いいえ
この形にすると、営業メールが増えているのか、テスト回答が混ざっているのか、対象外回答が多いのかを見られます。
Apps Scriptで初期値を入れるなら最小限にする
Googleフォーム送信時に、Apps Scriptで初期値を入れることもできます。
最初は、未対応と集計対象だけで十分です。
function onFormSubmit(e) {
const sheet = e.range.getSheet();
const row = e.range.getRow();
const headers = sheet.getRange(1, 1, 1, sheet.getLastColumn()).getValues()[0];
setCellByHeader(sheet, headers, row, "対応状況", "未対応");
setCellByHeader(sheet, headers, row, "集計対象", "はい");
setCellByHeader(sheet, headers, row, "最終更新日", new Date());
}
function setCellByHeader(sheet, headers, row, headerName, value) {
const index = headers.indexOf(headerName);
if (index === -1) return;
sheet.getRange(row, index + 1).setValue(value);
}
ここで、営業メール判定まで自動化したくなることがあります。
でも、最初から全部をGASに入れすぎないほうがいいです。
分類ルールがコードの中に隠れると、あとで運用担当が直しにくくなります。
まずは、届いた回答に初期状態を入れる。
除外判断は、人が見て 対応状況、集計対象、除外理由 を更新する。
件数が増えて、判断基準が安定してから自動分類を考える。
この順番のほうが壊れにくいです。
判断に迷うものは「除外」ではなく「要確認」にする
営業メールかどうか迷う回答があります。
たとえば、本文は営業っぽいけれど、導入相談にも見える。テスト回答に見えるけれど、本当に短い問い合わせかもしれない。
この場合、いきなり除外しないほうがいいです。
明らかな営業メール: 除外
明らかな社内テスト: 除外
判断に迷うもの: 要確認
ステータスを4つだけで始める場合でも、迷う回答は 未対応 のまま担当者へ回すか、運用上 確認待ち を足します。
本物の問い合わせを営業メールとして消すことが、いちばん危ないからです。
FORMLOVAの営業メール分類でも、考え方は同じです。AI分類は補助で、人が最後に見て直せる状態にしておくほうが安全です。
週次で見る数字
除外理由を残すと、週次確認が具体的になります。
回答総数
集計対象件数
除外件数
除外理由別件数
未対応件数
対応中で止まっている件数
たとえば、次のように見ます。
回答総数: 42
集計対象: 31
除外: 11
営業メール: 7
テスト回答: 2
重複: 1
対象外: 1
未対応: 4
対応中で7日以上更新なし: 2
ここまで見えると、次の判断ができます。
営業メールが多いなら、入口対策を見る。
テスト回答が混ざるなら、本番公開前の検証フローを見る。
対象外が多いなら、フォームの説明文や選択肢を見る。
未対応が残るなら、通知や担当者決めを見る。
除外は、汚いデータを隠す箱ではありません。
フォーム運用を改善するための観測項目です。
既存記事との役割分担
このテーマは近い記事が多いので、役割を分けます。
| 読みたいこと | 次に読む記事 |
|---|---|
| Googleフォーム、Sheets、GASをどこまで使うか判断したい | Googleフォーム + スプレッドシート + GAS運用の判断基準 |
| 未対応、対応中、完了、除外の意味を決めたい | フォーム回答のステータス管理とは |
| Googleフォームの迷惑回答を入口で減らしたい | Googleフォームのスパム対策 |
| 担当者と対応状況の列設計を見たい | Googleフォームの回答に「担当者」と「対応状況」を持たせる設計 |
| 非エンジニア向けに運用の約束を読みたい | Googleフォームの回答、誰が対応するか決まっていますか? |
この記事は、営業メールやテスト回答を削除せず、除外理由を残す話だけに絞っています。
入口対策を詳しくやる記事ではありません。担当者管理の総論でもありません。
回答行を消さず、通常集計から外し、理由を説明できるようにするための記事です。
チェックリスト
Googleフォームの回答シートで、最低限ここを確認します。
[ ] 対応状況に 除外 がある
[ ] 集計対象 列がある
[ ] 除外理由 はプルダウンになっている
[ ] 営業メール、テスト回答、重複、対象外を分けている
[ ] 除外しても元の回答行は消さない
[ ] 通常レポートは 集計対象 = はい だけを見る
[ ] 除外理由別の件数を週次で見ている
[ ] 判断に迷う回答をいきなり除外しない
まとめ
Googleフォームの回答に営業メールやテスト回答が混ざるのは珍しくありません。
問題は、混ざること自体より、削除して見えなくしてしまうことです。
削除すると、回答総数、除外件数、除外理由、改善材料が残りません。
まずは、回答行を残します。
対応状況 = 除外 にします。
集計対象 = いいえ にします。
除外理由 を固定値で残します。
これだけで、Googleフォームの回答シートは、ただの一覧から、後から説明できる運用台帳に近づきます。
参考
- Googleフォームの回答を表示、管理する - Google ドキュメント エディタ ヘルプ
- Google スプレッドシートの QUERY 関数
- Installable triggers - Google Apps Script
