GoogleフォームをGASで自動入力する方法:初心者向けガイド


GASでGoogleフォームを自動入力するための準備
Googleフォームに自動でデータを入力するためには、まずGASのスクリプトを設定する必要がある。
Googleフォームとスプレッドシートを連携する
はじめに、Googleフォームの回答を保存するスプレッドシートを作成しなければならない。
スプレッドシートにフォームの回答を保存するために、Googleフォームの設定で「回答を保存」を有効にする。
新しいGASプロジェクトを作成する
次に、GoogleスプレッドシートからGASプロジェクトを新規作成する。
スプレッドシートを開き、「拡張機能」から「スクリプトエディタ」を選択し、新規プロジェクトを作成する。
GASでGoogleフォームにデータを自動入力するコードを書く
GASスクリプトを用いて、Googleフォームにデータを自動で埋め込む方法を学んでいこう。
GASスクリプトを設定する
以下のGASスクリプトでフォームに自動入力を実現しよう。
function autoFillGoogleForm() {
var formUrl = 'https://docs.google.com/forms/d/your-form-id/formResponse';
var data = {
// フォームの各項目に対応する名前属性と値を設定
'entry.1234567890': 'John Doe',
'entry.0987654321': 'johndoe@example.com'
};
var options = {
'method': 'post',
'payload': data
};
UrlFetchApp.fetch(formUrl, options);
}
formUrlにはGoogleフォームの回答URLを設定する。
dataオブジェクトには、Googleフォームで設定されている各項目の名前と、その項目に入力したい値をペアで設定する。
UrlFetchApp.fetch()を使用してフォームにデータを送信する。methodは’post’を指定し、データはpayloadとして送信される。
GASスクリプトをテストする
スクリプトが正しく設定されたかテストしよう。
スクリプトを実行して確認する
スクリプトエディタで自動入力スクリプトを実行し、Googleフォームに正しくデータが入力されるか確認する。
スクリプトを実行するとき、GASの権限承認が求められるはずだ。表示される指示に従って承認を行う必要がある。


練習問題:GASを使ったGoogleフォーム自動入力
Googleフォームの各項目に対して異なる名前でAutoFillを試してみましょう。次に試す項目は、フォームに「年齢」と「フィードバック」を入力してください。
解答・解説
function autoFillGoogleForm() {
var formUrl = 'https://docs.google.com/forms/d/your-form-id/formResponse';
var data = {
'entry.1234567890': 'John Doe', // 名前
'entry.0987654321': 'johndoe@example.com', // メール
'entry.1122334455': '25', // 年齢
'entry.5544332211': 'これからも頑張ってください!' // フィードバック
};
var options = {
'method': 'post',
'payload': data
};
UrlFetchApp.fetch(formUrl, options);
}
このスクリプトでは、フォームに追加された「年齢」と「フィードバック」の項目にデータを入力する方法を示している。
各フォーム項目のentry.IDは、GoogleフォームのHTMLコードを調査して対応するものを指定する必要がある。