【GAS応用編】GASでGoogleフォームの回答を他のスプレッドシートに自動転記する方法【コピペOK】

Googleサービス

Googleフォームとスプレッドシートは連携すれば自動で回答を記録できますが、それはあくまで「1フォーム:1スプレッドシート」という標準機能の範囲。

「条件によって別のスプレッドシートに転記したい」といった複雑な処理を行いたい場合には、Google Apps Script(GAS)の力が必要です。

本記事では、フォームの回答内容に応じて、別々のスプレッドシートへ自動的にデータを振り分けて転記する方法を、初心者にもわかりやすく解説します。

GASの基礎からトリガー設定、トラブル対策、さらに複数転記先の実装方法まで、画像とソースコード付きで解説します。

 

\スキルゼロでも自動化できる!/
パソコン1台で業務効率化!GASで“できる人”に。
→ Google Apps Script 講座の購入はこちら
実務に使えるサンプルコード&解説付きで安心!

Googleフォームで回答内容に応じて別々のスプレッドシートに自動転記するには?

Googleフォームとスプレッドシートは連携すれば自動で回答を記録できますが、標準機能では「1フォーム:1スプレッドシート」の範囲しか対応できません。

たとえば、「旅行プランが沖縄ならシートA、北海道ならシートBへ転記したい」といったような条件付きの振り分け処理は標準機能では不可能です。

そうした複雑な処理を実現するには、Google Apps Script(GAS)を活用する必要があります。

本記事では、GASの基礎からトリガー設定、トラブル対策、さらには条件に応じた複数スプレッドシートへの自動転記の方法を、画像とソースコード付きでわかりやすく解説します。

Googleフォームとスプレッドシートって何?(基礎編)

Googleフォームとスプレッドシートとは

Googleフォームは、Googleが提供する無料のオンラインアンケートツールです。

マウス操作だけで簡単にフォームを作成でき、集計結果もグラフで自動表示されるため、アンケートや申し込み受付に便利です。

Googleスプレッドシートは、Excelのような表計算ツールで、データの集計や可視化、フィルタリングなどが可能です。

フォームと組み合わせることで、回答内容を自動で記録・整理できる強力なツールになります。

でも…標準機能だけでは足りない!

標準機能の限界

Googleフォームとスプレッドシートの連携は便利ですが、できることには限界があります。

標準機能の限界:

  • 転記先は1つのスプレッドシートのみ
  • データの整形・フィルタリングは手動対応
  • 条件分岐や複数シートへの振り分けは不可

このような限界を超えて、条件に応じて複数のシートへ自動転記したい場合は、
GAS(Google Apps Script)を使ったカスタム処理が必要です。

この記事でできるようになること

この記事では、以下のような処理を実装していきます。

  • Googleフォームで回答を収集
  • 回答内容(例:旅行プラン)によって転記先を振り分け
  • 複数のスプレッドシートに自動で振り分けて記録

Googleフォーム回答データの転記自動化の流れ

今回は以下の流れで自動転記処理を構築していきます。

実装の流れ
  • STEP1
    Googleフォームを作成
    → 項目に「旅行プラン(沖縄・北海道)」などの分岐条件を設定
  • STEP2
    スプレッドシートを2つ用意
    → 沖縄プラン用・北海道プラン用などの転記先を準備
  • STEP3
    Apps Scriptの作成
    → フォームに応じた自動転記スクリプトを記述
  • STEP4
    トリガー設定
    → 「フォーム送信時」にスクリプトが自動実行されるよう設定

Googleフォーム回答データの転記自動化を実装してみよう

それでは、GASを使用したGoogleフォーム回答データをスプレッドシートに自動転記するスクリプトを作っていきましょう!

手順は以下のとおり。

  1. Googleフォームの作成
  2. スプレッドシートを作成
  3. GASスクリプトの作成
  4. トリガーの設定

順番にご紹介していきます。

Googleフォームを作成しよう

まずは、ユーザーからの回答を収集するためのGoogleフォームを作成します。今回は「旅行プラン予約フォーム」を想定して構築します。

続きを読む

このコンテンツはパスワードで保護されています。 コンテンツを読みたい方はITツールの匠ストア(https://it-tool-takumi.stores.jp/)で講座閲覧権を取得してね。

ITツールの匠ストア「GASでGoogleフォームの回答を他のスプレッドシートに自動転記する方法」はこちら >>

フォーム送信のテスト方法(2024年以降の新仕様対応)

以前は「プレビュー」から手軽に送信テストができましたが、現在は仕様変更により、プレビューモードからの送信ができません。

そのため、以下の手順で実際の送信を行い、GASのスクリプト動作をテストしてください。

Googleフォーム送信テストのやり方(2024年以降対応)
  • STEP1
    フォーム編集画面右上の「公開」ボタンをクリック

    公開ボタンの場所 Googleフォームの編集画面右上にある「公開」ボタンをクリックします。 この操作でフォームが本番用URLとして利用可能になります。

  • STEP2
    「リンクを知っている全員」を「制限付き」に変更

    フォーム共有設定画面 共有範囲が表示されるので、
    「リンクを知っている全員」→「制限付き」に変更し、「完了」をクリックしてください。 セキュリティの観点からもこの設定がおすすめです。

  • STEP3
    リンクボタンをクリックして送信用URLを取得

    右上の🔗アイコン(リンクマーク)をクリックし、表示された「回答者へのリンクをコピー」を押します。
    これでフォームの送信URLが取得できます。

  • STEP4
    取得したURLを別タブで開く

    コピーしたURLを新しいタブまたはシークレットウィンドウで開きます。
    回答者画面が表示されればOKです。

  • STEP5
    テスト用のデータを入力して送信

    フォームに任意のデータ(例:名前・プラン選択など)を入力し、「送信」ボタンを押して実行します。 これがスクリプトのトリガーになります。

  • STEP6
    スプレッドシートに転記されたか確認

    GASのスクリプトが正しく設定されていれば、該当のスプレッドシートに自動転記されているはずです。 転記先が条件分岐されている場合は、選んだプランに応じたシートに反映されます。

 

この方法を使えば、トリガーの発火・スクリプトの挙動・スプレッドシート転記の成否を、すべて本番同様にテスト可能です。

今回の場合は、質問項目の中の最後の設問であるプラン名の質問にて選ばれた内容が”沖縄プラン”かを判定しています。

沖縄プランだった場合は、1つ目のスプレッドシートへ、それ以外(北海道プラン)だった場合は、2つ目のスプレッドシートへ転記されます。

記述ができたら動作確認を再度実施しスプレッドシートの振り分けが正常に行えるか確認してみましょう!

うまく動かないときの確認ポイント【トラブルシューティング】

テスト送信をしてもスプレッドシートに転記されない、またはスクリプトが動作しない…そんなときは以下のポイントを順に確認してみましょう。

GASが動かないときの確認リスト
  • 原因①
    スプレッドシートIDの間違い

    スクリプト内の const ssid = '〜' で設定したIDが間違っていないか確認します。
    GoogleスプレッドシートのURL内、
    https://docs.google.com/spreadsheets/d/ココがID/edit
    このIDをコピーして貼り付けましょう。

    よくあるミス:「o(オー)と0(ゼロ)」や「I(アイ)と1(イチ)」の見間違い。

  • 原因②
    設問数(questionCount)がズレている

    フォームの設問数と、スクリプト内の const questionCount = 5; が一致していますか?
    設問を増減した場合、この数字も更新する必要があります。

    getItemResponses() の数とズレると undefined が返ってしまい、処理が止まります。

  • 原因③
    スプレッドシートのシート名が違う

    スクリプト内で getSheetByName('シート1') としている場合、実際のシート名も「シート1」になっている必要があります。
    大文字・小文字や全角半角も一致させましょう。

  • 原因④
    トリガーが未設定・間違っている

    「フォーム送信時」のトリガーが設定されていない、または設定ミスがあると、スクリプトは自動で実行されません。

    トリガー一覧で、関数名が正しいか、イベントソースが「フォームから」になっているか確認してください。

  • 原因⑤
    手動で実行してエラーが出ている

    TravelplanAutoMove(e) 関数はフォーム送信時にしか動作しません。
    エディタ画面で手動実行すると e is undefined エラーになります。

    動作確認は実際のフォーム送信から行ってください。

  • 原因⑥
    Googleの許可(認証)が未完了

    トリガー設定後、Googleアカウントでの認証を完了していないとスクリプトがブロックされます。
    「実行」ボタンを押して表示される認証フローを完了してください。

    ✅ 「このアプリは確認されていません」と出た場合は、「詳細」→「許可へ進む」と進んでOKです。

このチェックリストで問題を特定できない場合は、Apps Scriptエディタの「表示」→「ログ」からエラー詳細を確認するのがおすすめです。

Logger.log() を使って変数の中身を出力することで、どこまで処理が進んでいるかを確認できます。

 

未経験からスキルアップ!おすすめのPC・プログラミングスクール

「プログラミングに興味があるけど、どこから始めればいいか分からない…」

そんなあなたに向けて、初心者でも安心して学べるパソコン・プログラミングスクールを3つ厳選しました!

ラテ先生
ラテ先生
おすすめスクールをチェック!
  • Winスクール:マンツーマンの個別指導で効率よくスキル習得
  • Aidemy Premium:AI・データ分析に強い実践型オンライン講座
  • DMM WEBCAMP:短期集中でIT転職を目指す人におすすめ

Winスクール|個別指導で確実にステップアップ


全国50校以上の教室を展開するWinスクールでは、マンツーマン指導によって初心者でも理解しやすく、自分のペースで学習が進められます。

オンライン対応なので、忙しい社会人でも無理なく続けられる点も大きな魅力!

  • マンツーマン指導:分からないことはすぐに質問できる
  • 企業研修実績多数:実務に直結するスキルが身に付く
  • 通学・オンライン両対応:ライフスタイルに合わせて選べる
\個別授業で即戦力になる/
全国展開のPCスクール
Winスクールをチェック

無料カウンセリングあり

Aidemy Premium|AI時代のスキルを最前線で学べる

Aidemy Premiumの講座画像
Aidemy Premiumは、AI・データ分析などの先端技術に特化したオンライン講座。

学習モチベーションを維持する仕組みや、コードレビュー、オンライン自習室など、未経験でも挫折しにくい工夫が満載です。

  • AI技術に特化:顔認識アプリやスクレイピングも学べる
  • モチベーション維持:進捗サポートやチャット質問し放題
  • プロによる添削:現場で通用するコード力が身に付く
\AIスキルを習得、未来を切り開く/
豊富なカリキュラムで選択自由
Aidemy Premiumをチェック

不安なし!充実のサポート体制

DMM WEBCAMP|転職を目指すなら最短ルート!

DMM WEBCAMPの講座画像
DMM WEBCAMPは、転職支援を重視したカリキュラムが魅力。

短期間でのスキル習得とキャリアチェンジを目指す社会人にぴったりのスクールです。

経済産業省認定の「第四次産業スキル習得講座」にも認定されており、条件を満たせば最大70%の給付金が受けられるのもポイント。

  • 短期集中プラン:最短4週間から受講可能
  • 転職成功率98.8%:キャリアサポートも充実
  • チーム開発あり:実践に近い経験が積める
\転職成功率98.8%の実績/
4カ月でエンジニアに変身
DMM WEBCAMPをチェック

無料カウンセリングで不安解消

まとめ

今回は、Googleフォームでの回答をスプレッドシートに自動転記するスクリプトをGASにて作成しました。

内容をまとめると以下。

  • Googleフォームからの回答データを手作業で転記するのは非効率でエラーのリスクが高い
  • Google Apps Script(GAS)を使用すれば、回答をトリガーとして自動的にスプレッドシートへの転記が可能
  • 応用編として複数のスプレッドシートへの転記方法をご紹介。

GASを利用すればGoogle提供サービスの自動化を簡単に行うことができます。

今回ご紹介した転記機能をぜひ活用してみてください。

 

\スキルゼロでも自動化できる!/
パソコン1台で業務効率化!GASで“できる人”に。
→ Google Apps Script 講座の購入はこちら
実務に使えるサンプルコード&解説付きで安心!

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