第27回 フォームの回答がシートに縦に積まれる仕組み

第4章では「フォームデータがシートに記録される仕組み」を解説します。第27回はフォームの回答がスプレッドシートにどう記録されるかの基本的な仕組みです。

この仕組みを理解しておくと、第5章のCOUNTIF関数がなぜああいう書き方になるのかがスムーズに理解できます。

フォームを送信すると何が起きるか

Googleフォームに回答を入力して「送信」ボタンを押した瞬間、以下のことが自動的に起きます。

Googleのサーバーが回答データを受け取る
連携しているスプレッドシートの「フォームの回答」シートに新しい行が1行追加される
A列にタイムスタンプ(送信日時)が自動記録される
B列以降に各質問の回答が横一列に並んで記録される
📝 「横一列」がポイント

1回の送信=1行のデータです。田中選手が入力したデータは1行、鈴木選手が入力したデータはまた1行と、試合が増えるたびに行が縦に積み上がっていきます。これが「縦に積まれる」という表現の意味です。

実際のシートの見え方

野手フォームの回答シートは、試合を重ねるにつれてこのように積み上がっていきます。

A列
タイムスタンプ
B列
試合日
C列
〇試合目
D列
打順
E列
選手名
F列
第一打席
G列
第二打席
2026/5/11 18:32 2026/5/11 1試合目 1番 田中 三安 遊ゴ
2026/5/11 18:35 2026/5/11 1試合目 2番 鈴木 中2 右本
2026/5/18 17:10 2026/5/18 1試合目 1番 田中 四球 中安
2026/5/18 17:14 2026/5/18 1試合目 2番 鈴木 三振 遊ゴ

このように、試合が増えるたびに行が下に追加されていきます。シーズンを通して試合を重ねると、数百行になることもあります。

タイムスタンプとは何か

A列に自動記録される「タイムスタンプ」は、フォームが送信された正確な日時です。

✅ タイムスタンプの役割
  • 入力順の確認:誰が何時に入力したかを把握できる
  • 重複入力の検出:同じ選手が短時間に複数回送信した場合に気づける
  • データの信頼性確認:試合当日以外に入力された場合などを確認できる
📝 タイムスタンプは成績集計には使わない

成績の集計には「試合日(B列)」と「選手名(E列)」を使います。タイムスタンプはあくまでも管理用の情報です。COUNTIFの条件にはなりません。

列の番号を把握しておく重要性

COUNTIFで集計するときに「どの列のデータを参照するか」を指定する必要があります。フォームの回答シートの列構成を把握しておきましょう。

内容 COUNTIFでの用途
A列タイムスタンプ使わない
B列試合日試合ごとの集計条件
C列〇試合目ダブルヘッダーの区別
D列打順スコア表の並び替えに使用
E列選手名最重要:選手ごとの集計条件
F列守備位置スコア表の表示に使用
G列第一打席打席結果のカウント対象
H列〜P列第二打席〜第十打席打席結果のカウント対象
Q列打点SUMIFで合算
R列盗塁SUMIFで合算
⚠️ 列の位置はフォームの質問順で決まる

列の位置はフォームの質問の順番に対応しています。質問の順番を変えると列の位置も変わり、既存のCOUNTIF関数が正しく動かなくなることがあります。フォームの質問順は原則として変更しないようにしましょう。

データが増えても関数は自動で対応する

COUNTIFやSUMIFの範囲を「G2:G1000」のように十分な行数で設定しておけば、新しいデータが追加されても関数が自動で対応します。最初から余裕を持った範囲を設定しておくことが重要です。

✅ この記事のまとめ
  • フォームを送信するたびに新しい行が1行追加される
  • A列にはタイムスタンプ、B列以降に回答が横並びで記録される
  • 試合・選手が増えるほど行が縦に積み上がっていく
  • 集計には選手名(E列)と打席結果(G〜P列)を主に使う
  • フォームの質問順を変えると列の位置が変わるため原則変更しない
  • 関数の範囲は最初から余裕を持って設定しておく

次回予告

次回は「フォームの回答シートは触らなくていい理由」。自動記録シートを守る考え方と、絶対に手動編集してはいけない理由を解説します。

▶︎ 次回:【第28回】フォームの回答シートは触らなくていい理由

コメント

タイトルとURLをコピーしました