【初心者でも簡単】Googleフォームの回答をスプレッドシートに自動反映!設定方法とデータ活用術を徹底解説

アイキャッチ画像 自動化事例

「セミナーの申し込みリストを作成したい」
「お客様からの問い合わせ内容を一覧で管理したい」

BtoBビジネスにおいて、Googleフォームはアンケートや申し込みフォームとして非常に便利なツールです。しかし、フォームに集まった回答を手作業でコピーしてExcelやスプレッドシートに貼り付け、集計している方も多いのではないでしょうか。

その作業、Googleフォームとスプレッドシートを連携させることで、完全に自動化できます。

回答が送信された瞬間に、指定したスプレッドシートへ自動でデータが反映されるため、面倒なコピペ作業は一切不要になります。これにより、リアルタイムで最新の情報を確認できるだけでなく、データ集計や分析の効率も飛躍的に向上します。

この記事では、Googleフォームとスプレッドシートの連携方法から、連携後のデータをさらに便利に活用する関数まで、図解を交えて分かりやすく解説します。

この記事を読み終える頃には、あなたもフォームのデータ管理を自動化し、本来の業務に集中できる環境を整えられるはずです。

Googleフォームとスプレッドシートを連携する3つのメリット

まずは、連携することでどのようなメリットがあるのかを具体的に見ていきましょう。主なメリットは以下の3つです。

  1. リアルタイムでの自動更新で手作業がゼロに
    フォームに回答が送信されると、即座にスプレッドシートにデータが追加されます。手動で更新する必要がなく、常に最新の情報を確認できます。
  2. データ集計・分析の効率が飛躍的に向上
    スプレッドシートの強力な関数やグラフ機能を使えるようになります。例えば、申し込み人数のカウントや、特定の条件に合う回答の抽出などが簡単に行え、集計・分析作業の時間を大幅に削減できます。
  3. 複数人での共同作業がスムーズに
    スプレッドシートは複数人での同時編集が可能です。関係者全員が同じ最新データにアクセスできるため、情報共有が円滑になり、チームでの対応が迅速になります。

【図解】Googleフォームとスプレッドシートの連携設定方法

それでは、早速設定方法を見ていきましょう。今回は、多くの企業で利用される「セミナー申し込みフォーム」を例に解説します。

ステップ1: Googleフォームの作成

まず、基本となるGoogleフォームを作成します。今回は以下のような項目を用意しました。

  • 会社名
  • 部署名
  • 氏名
  • メールアドレス
  • 参加希望日程(選択式)
フォーム作成画面

ステップ2: 「回答」タブからスプレッドシートと連携

フォームが完成したら、画面上部にある「回答」タブをクリックします。次に、緑色のスプレッドシートのアイコンをクリックしてください。

SSリンク設定画面

ステップ3: 連携先スプレッドシートの選択

アイコンをクリックすると、「回答の送信先を選択」というウィンドウが表示されます。

今回は新しくスプレッドシートを作成するため、「新しいスプレッドシートを作成」を選択し、分かりやすい名前(例: セミナー申し込み者リスト)を付けて「作成」ボタンをクリックします。

※すでに管理用のスプレッドシートが存在する場合は、「既存のスプレッドシートを選択」から連携させることも可能です。

新しいスプレッドシートを作成

ステップ4: 自動連携されたスプレッドシートの確認

「作成」をクリックすると、自動的に新しいスプレッドシートが開き、フォームと連携された状態になります。このシートは「フォームの回答 1」といった名前になります。

フォームで設定した質問項目が、1行目の見出し(ヘッダー)として自動的に入力されていることを確認してください。今後、フォームに回答があるたびに、このシートにデータが自動で蓄積されていきます。

SS連携完了後

設定は以上です。驚くほど簡単だったのではないでしょうか。

連携したスプレッドシートを使いこなす!便利な関数活用術

連携しただけでは、データが蓄積される箱ができたに過ぎません。ここからは、スプレッドシートの関数を使って、蓄積されたデータを「使える情報」に変えていく方法を2つご紹介します。

活用術1: QUERY関数で別シートにデータを引用・整形する

フォームの回答が蓄積されるシートを直接編集すると、誤ってデータを消してしまったり、数式が崩れたりするリスクがあります。

そこで、QUERY(クエリ)関数を使い、分析や加工用のシートを別途作成するのがおすすめです。QUERY関数は、データベースを操作するような感覚で、必要なデータだけを柔軟に抽出・並べ替えできる非常に強力な関数です。

例えば、参加日程ごとに申し込み者リストを作成してみましょう。

「A日程リスト」という名前で新しいシートを作成し、A1セルに以下の関数を入力します。

=QUERY(
  'フォームの回答 1'!A:F,
  "SELECT * WHERE F = 'A日程'"
)

【関数の解説】

‘フォームの回答 1’!A:F の部分で、元の回答が蓄積されているシートのA列からF列をデータの範囲として指定します。
“SELECT * WHERE F = ‘A日程'” の部分で、「F列(参加希望日程)が ‘A日程’ の行のすべての列を抽出する」という命令をしています。
これにより、「A日程」の申し込み者だけを一覧にしたリストが自動で作成されます。同様に「B日程」のリストも簡単に作成できます。

フォームで送信されたデータ
蓄積された全ての回答
Query関数表示画面
参加希望日程がA日程のデータのみが表示できている

【ワンポイント】ARRAYFORMULA関数との組み合わせ

QUERY関数は、ARRAYFORMULA関数を使わなくても自動で範囲を展開してくれますが、他の関数(IFやVLOOKUPなど)と組み合わせて使う場合は、ARRAYFORMULA関数で数式を囲むと、数式を一つ入力するだけで対象範囲すべての計算が実行され、非常に便利です。

ARRAYFORMULA関数の詳しい使い方については、こちらの記事も参考にしてください。

活用術2: COUNTIF関数で条件に合うデータを集計する

次に、各日程の申し込み人数を自動で集計してみましょう。このような「条件に合うセルの数を数える」作業には、COUNTIF(カウントイフ)関数が最適です。

「集計」シートを新しく作成し、集計用の表を作成します。人数を表示したいセルに以下の関数を入力します。

=COUNTIF('フォームの回答 1'!F:F, "A日程")

【関数の解説】

‘フォームの回答 1’!F:F の部分で、検索したい範囲(参加希望日程の列)を指定します。”A日程” の部分で、数えたい条件を指定します。

これにより、「A日程」と入力されているセルの数がカウントされ、申し込み人数が自動で表示されます。フォームに新しい回答が追加されるたびに、この集計結果もリアルタイムで更新されます。

COUNTIF設定画面

【応用】GASでさらに便利に!回答があったらメールで通知

最後に、少し応用的な内容をご紹介します。
Googleフォームが送信されたタイミングで、担当者にメールで通知を送ることができれば、迅速な対応につながります。

これを実現するのが、GAS(Google Apps Script)です。GASは、Googleの各種サービスを自動化できるプログラミング言語で、今回はGoogleフォーム本体に紐づけて使用します(これをコンテナバインドスクリプトと呼びます)。

スクリプトの記述

Googleフォームのスクリプトエディタに以下のコードを記述します。

// この関数はフォーム送信時に自動的に実行されます
function onFormSubmit(e) {
  // 回答内容を取得
  const itemResponses = e.response.getItemResponses();
  let mailBody = 'セミナーの申し込みがありました。\n\n';
  
  // メールの本文を作成
  for (const itemResponse of itemResponses) {
    const question = itemResponse.getItem().getTitle();
    const answer = itemResponse.getResponse();
    mailBody += `${question}: ${answer}\n`;
  }
  
  const mailTo = 'your-email@example.com'; // 通知を受け取りたいメールアドレスに変更してください
  const subject = '【セミナー申し込み通知】';
  
  // メールを送信
  MailApp.sendEmail(mailTo, subject, mailBody);
}

トリガーの設定方法

コードを記述しただけでは自動実行されません。「フォームが送信されたとき」という実行のきっかけ(トリガー)を設定する必要があります。

  1. スクリプトエディタを開く
    Googleフォームの編集画面で、右上の「︙」(その他の設定)をクリックし、「スクリプトエディタ」を選択します。
スクリプト設定選択
  1. コードを貼り付けて保存
    開いたエディタに、先ほどのコードを貼り付けます。フロッピーディスクのアイコン(「プロジェクトを保存」)をクリックして、スクリプトを保存します。
GAS入力画面
  1. トリガー設定画面を開く
    エディタの左側にあるメニューから、時計のアイコン(「トリガー」)をクリックします。
トリガー選択
  1. トリガーを追加する
    右下にある「トリガーを追加」ボタンをクリックします。
トリガー追加画面
  1. トリガーを設定する
    以下の通りに設定し、「保存」をクリックします。
    1. 実行する関数を選択: onFormSubmit
    2. 実行するデプロイを選択: Head
    3. イベントのソースを選択: フォームから
    4. イベントの種類を選択: フォーム送信時
トリガー設定画面
  1. 承認プロセス
    初めてトリガーを設定する際には、スクリプトの実行を許可するための承認画面が表示されます。画面の指示に従い、アカウントを選択し、「許可」をクリックしてください。
    詳しい承認手順は、こちらの記事で詳しく解説しています。

これで、フォームに新しい回答が送信されるたびに、自動でメールが送信されるようになります。

まとめ

今回は、Googleフォームの回答をスプレッドシートに自動で反映させる方法と、そのデータを活用する基本的な関数について解説しました。

  • フォームとスプレッドシートの連携は、数クリックで完了するほど簡単。
  • 連携により、データ入力の手間がゼロになり、集計・分析作業が大幅に効率化される。
  • QUERY関数を使えば、必要なデータだけを安全に抽出し、リスト化できる。
  • COUNTIF関数を使えば、条件に合うデータの個数を簡単に集計できる。
  • 応用として、GASを使えばメール通知などのさらに高度な自動化も実現可能。

これまで手作業で行っていたデータ管理を自動化することで、作業ミスの削減や時間の節約につながり、より付加価値の高い業務に集中できるようになります。

まずは簡単なフォームから、ぜひこの自動連携を試してみてください。

※Googleサービスは、Google LLC の商標であり、この記事はGoogleによって承認されたり、Google と提携したりするものではありません。