Clicky

【GAS】Googleフォームの回答をリアルタイムにWeb表示する仕組みを作る(Part1)

GAS(GoogleAppsScript)
GAS(GoogleAppsScript)
この記事は約2分で読めます。

※記事中に広告情報を含みます。

スキルを手に入れた時、人は強くなれる。
Youtubeでスキルアップを始める 電子書籍でスキルアップを始める
\ワードプレスのスキルアップはこちら!/ WordPress入門読本

はじめに

Googleフォームは、アンケートや申し込み受付に広く使われています。
フォームで集めたデータは自動的にスプレッドシートに保存されますが、閲覧するには毎回スプレッドシートを開く必要があるのが難点です。

もし、Webページを開くだけで「最新の回答一覧」が自動更新されて表示されたらどうでしょうか。
社内イベントや説明会、あるいは授業などで、参加者の回答をリアルタイムに共有するのにとても便利です。

その仕組みを可能にするのが Google Apps Script(GAS) です。


仕組みの流れを整理する

ここで実現するのは「フォーム回答 → スプレッドシート → Webアプリ」のパイプラインです。

  1. フォーム回答の保存
    • Googleフォームに入力された内容は、自動でスプレッドシートに記録されます。
    • 各回答は行ごとに追加され、回答日時などの基本情報も同時に保存されます。
  2. GASによるデータ取得
    • GASを使ってスプレッドシートを操作します。
    • 特定の列(今回はB列の回答部分)を抽出し、配列として返す関数を作ります。
  3. Webアプリとして公開
    • GASには doGet() という関数があり、これを使うとHTMLを返せます。
    • WebアプリのURLにアクセスすると、そのHTMLが表示されます。
  4. JavaScriptによる自動更新
    • HTML側で google.script.run を使い、定期的にGAS関数を呼び出します。
    • 例えば5秒ごとに最新データを取得し、画面を書き換えれば「リアルタイム表示」が実現します。

どんな場面で役立つ?

  • イベント会場
    参加者にQRコードを配布し、フォームに回答してもらう → スクリーンに即時反映
  • 社内アンケート
    会議で意見収集を行い、その場で全員に可視化して議論を深める
  • 教育現場
    授業中の質問や投票をそのまま画面に出して、生徒と一緒に振り返る

まとめ

第1章では、フォーム回答をリアルタイムにWebページへ表示する全体像を説明しました。
重要なのは次の3点です:

  • スプレッドシートに保存された回答をGASで取り出す
  • doGet()でHTMLを返してWebアプリ化
  • JavaScriptで数秒ごとに更新してリアルタイム表示

次の章からは、この仕組みを支える具体的なコードを確認していきます。