「Googleフォームの自動化・効率化を実現したい」
「GASの具体的なコード例や実装手順を知りたい」
GASとGoogleフォームの連携を考えている方は、上記のような悩みを抱えている場合も多いのではないでしょうか。
そこで、本記事ではGASでGoogleフォームを自動化するメリット、活用例、初期実装手順などを解説します。よくあるトラブルへの対処法も解説しますので、ぜひ最後までご覧ください。
また、ノーコードで高機能なフォームを作るなら、フォーム作成ツール「formrun」がおすすめです。formrunを使用するメリットは主に下記の7つです。
- プログラミング不要
- 集計がリアルタイムで行える
- 入力補助機能がつけられる
- ワンクリックでrecaptcha設定可能
- お問い合わせ管理、メール対応も可能
- Googleアカウントがある人は簡単に登録が可能
- 万全のセキュリティ
以上の機能が完備されており、基本料金は無料です。
ビジネス用フォーム作成ツール「formrun」では、複数人でデザイン性の高いフォームを管理できます。
▼ビジネス利用では、formrunユーザーの”7割”がGoogleフォームから変更しています。
Googleフォームとformrunの違いを知りたい方は、こちらをご覧ください。
>> formrunとGoogleフォームの違い
目次 [非表示]
GAS(Google Apps Script)でGoogleフォームを自動化する3つのメリット
GAS(Google Apps Script)とは、Googleが提供する各種サービスの自動化や連携を簡単に実現できる、JavaScriptベースのローコード開発プラットフォームです。GASはWebブラウザ上で動作し、特別な開発環境を用意する必要がありません。
GASでGoogleフォームを自動化するメリットは主に下記の3つです。
- 業務効率化と作業時間の削減
- 自動返信・通知機能による迅速な対応
- 柔軟なカスタマイズ・拡張性
それぞれのメリットを詳しく見ていきましょう。
業務効率化と作業時間の削減
GASを活用すれば、Googleフォームの回答データを自動でスプレッドシートに転記・整形したり、メール通知や集計などの提携作業を自動化したりできます。これにより、手作業による入力や集計の手間、ヒューマンエラーが減り、リアルタイムで情報を反映可能です。
また、フォーム回答があったタイミングで自動的に担当者へメール通知を送ることも可能です。これにより、集計や分析作業にすぐに着手でき、作業時間を短縮できるでしょう。
自動返信・通知機能による迅速な対応
GASでGoogleフォームを自動化し自動返信・通知機能を実装すれば、問い合わせや申込に対して迅速な対応が可能になります。
自動返信メールや通知機能をGASで設定すると、フォーム送信直後に受けつけメールや案内を自動送信できます。また、担当者にもリアルタイムで通知が届くため、手動確認や返信の手間がなくなり、対応までのタイムラグが大幅に短縮可能です。
自動返信・通知機能を実装すれば、営業時間外でも即時対応可能となり、顧客満足度や業務効率が向上します。
柔軟なカスタマイズ・拡張性
GASでGoogleフォームを自動化すると、柔軟なカスタマイズや拡張が容易になり、業務や用途に合わせた独自機能の追加・変更が可能になります。
GASはJavaScriptベースで、Googleフォームの標準機能では実現できない細かな処理や他のサービスとの連携を簡単に実装可能です。少し、コードを変更するだけで機能追加や仕様変更ができるため、さまざまな業務フローやニーズに合わせてシステムを柔軟に拡張できます。
たとえば、フォームの回答内容に応じて自動返信メールの内容を変えたり、回答データを自動で分類・整理してスプレッドシートに反映させたりできます。
GASを使ったGoogleフォームの主な4つの活用例
GASの主な活用例は下記の通りです。
- フォーム項目の一括作成・変更
- 承認ワークフローの自動化
- 回答受付の自動制御
- フォーム初期値の自動設定
それぞれの活用例を詳しく見ていきましょう。
フォーム項目の一括作成・変更
GASを使えばGoogleフォームの項目を一括で作成・変更でき、フォーム運用の効率化が図れます。
通常、Googleフォームの項目追加や修正は手作業で1つずつ行う必要があり、項目数が多い場合や頻繁な修正が必要な場合は大きな手間となります。GASを使えば、スプレッドシートなどにまとめた項目リストをもとに、複数の質問や選択肢を一括で自動生成・編集可能です。そのため、作業時間が短縮できヒューマンエラーも防げます。
承認ワークフローの自動化
GASを使えば、Googleフォームと連携した承認ワークフローを自動化でき、申請から承認・却下・通知・記録まで一連の作業を効率的に実施可能です。
以上のようにGASを活用すれば、フォーム送信時に自動で承認者に通知し、承認・却下の操作もWeb画面やメールリンクからワンクリックで行えるようになります。これにより、紙や手作業による申請・承認プロセスの複雑さや確認漏れを防ぎ、承認状況の追跡や記録も自動化されるため、業務全体のスピードと正確性が向上します。
回答受付の自動制御
GASを使えば、Googleフォームの回答受付を自動制御でき、受付時間や締切、人数制限などを柔軟に自動化できます。
Googleフォームの標準機能では受付開始・終了のタイミングや人数制限を自動化できませんが、GASを活用すれば指定した日時や回答数に応じてフォームの受付状況を自動的に切り替えることが可能です。これにより、締切忘れや受付管理の手間を削減し、運用ミスを防げます。
フォーム初期値の自動設定
GASを使えば、Googleフォームの初期値を自動的に設定でき、回答者の入力負担を軽減したり、業務を効率化したりできます。
Googleフォーム標準機能の「事前入力したURLを取得」では、手動で初期値を設定したURLを作る必要があります。一方で、GASを使えばスプレッドシートなどのデータから自動で初期値付きURLを大量に生成可能です。
これにより、手作業の手間やミスを防ぎ、複数のパターンや大量の初期値設定も効率的に行えます。
GAS×Googleフォームの初期実装手順【3STEP】
GAS×Googleフォームの初期実装手順は下記の通りです。
- フォームの新規作成
- 設問の追加・編集
- 回答時の自動処理(トリガー設定)
それぞれの手順を詳しく見ていきましょう。
1.フォームの新規作成
GASを使ってGoogleフォームを新規作成するには、まずGoogleドライブ上で新しいスクリプトプロジェクトを作成します。その後、GASエディタにフォーム生成用のコードを記述・実行すれば、Googleフォームを自動で作成可能です。
具体的な手順は下記の通りです。
- Googleドライブで「新規」→「その他」→「Google Apps Script」を選択し、新しいスクリプトプロジェクトを作成する
- エディタが開いたら、以下のようなGoogleフォーム作成用のコードを記述する
function createForm() { var form = FormApp.create("アンケートフォーム"); form.setDescription("このフォームは自動生成されました。"); }
- コードを保存し、「実行」ボタンを押してスクリプトを実行する
- 実行が完了すると、Googleドライブの「マイドライブ」直下に新しくGoogleフォームが自動生成される
2.設問の追加・編集
GASを使ってGoogleフォームに設問を追加・編集するには、FormAppの各種メソッドを利用して質問項目をプログラムで追加し、タイトルや説明などを柔軟に設定できます。
具体的な手順は下記の通りです。
- Googleフォームの「拡張機能」→「Apps Script」からGASエディタを開く
- 追加したい設問の種類に応じて、下記のようなメソッドを使用する
記述式:addTextItem() 段落:addParagraphTextItem() ラジオボタン:addMultipleChoiceItem() チェックボックス:addCheckboxItem() プルダウン:addListItem()
- フォーム内の既存設問を編集する場合は、「getItems()やgetItems(type)」で項目を取得し、「asXXXXItem()」で型変換して編集する
var items = form.getItems(FormApp.ItemType.CHECKBOX); var checkboxItem = items[0].asCheckboxItem(); checkboxItem.setTitle('好きなフルーツを選んでください。') .setChoiceValues(['りんご', 'バナナ', 'ぶどう']) .setRequired(true);
- GASエディタ上部の「保存」→「実行」でスクリプトを実行し、フォームに設問が反映されていることを確認する
3.回答時の自動処理(トリガー設定)
GASを使ってGoogleフォームの回答時に自動処理を設定するには、フォーム送信時トリガーを設定し、GASで自動返信メール送信や通知などの処理を記述するのが基本です。
具体的な手順は下記の通りです。
- Googleフォームの「回答」タブから「スプレッドシートにリンク」をクリックし、新規または既存のスプレッドシートと連携する
- スプレッドシートの「拡張機能」→「Apps Script」を選択し、スクリプトエディタを開く
- 自動処理用スクリプトを作成する
function ReplyEmail(e) { const email = e.namedValues['メールアドレス'][0]; const subject = 'ご回答ありがとうございます'; const body = 'ご回答内容を受け付けました。'; MailApp.sendEmail({to: email, subject: subject, body: body}); }
- スクリプトエディタ左側の「時計アイコン(トリガー)」をクリックする
- 画面右下の「+トリガーを追加」をクリックする
- 「実行する関数」を自動実行したい関数名に設定する
- 「イベントのソース」を「スプレッドシートから」または「フォームから」に設定する
- 「イベントの種類」を「フォーム送信時」に設定する
- 「保存」をクリックして完了する
- フォームに実際に回答し、自動処理が正しく動作するか確認する
Googleフォームで自動返信を設定する方法について、詳しく知りたい方はこちらをご覧ください。
>> Googleフォームで自動返信を設定する方法3選|スクリプトの設定手順も解説
GASとGoogleフォームの連携でよくある3つのトラブル
GASとGoogleフォームの連携でよくあるトラブルは下記の3つです。
- トリガーが正しく動作しない
- 引数eの扱いの違いによるエラー
- 同時送信・大量アクセスによる不具合
それぞれのトラブルと対処法を詳しく見ていきましょう。
トリガーが正しく動作しない
GASとGoogleフォームの連携でよくあるトラブルは、トリガーが正しく動作しないことです。
GASのトリガーは、Googleフォームの送信時に特定のイベントに対して自動実行される仕組みです。しかし、スクリプトの権限が正しく付与されていなかったり、フォーム作成者以外のアカウントで設定していたりする場合、承認が必要な状態になりトリガーが動作しません。
トリガーが正しく動作しない場合は、GASエディタでトリガー画面を開き、実行許可が正しく設定されているか確認し、必要に応じて再承認・再設定を行いましょう。
引数eの扱いの違いによるエラー
GASとGoogleフォームの連携でよくあるトラブルは、引数eの中身が異なり誤ったプロパティやメソッドを参照してエラーになることです。Googleフォーム送信トリガーとスプレッドシートの送信トリガーでは、イベントオブジェクトeの構造が異なります。
たとえば、フォームトリガーで「e.response.getItemResponses()」で回答を取得しますが、スプレッドシートトリガーでは「e.namedValues」や「e.values」を使います。この違いを理解せずにコピペや流用すると、「TypeError: Cannot read properties of undefined」などのエラーが発生するため注意が必要です。
引数eの扱いの違いによるエラーが発生した場合は、トリガーをどちらで設定したかを確認し、それに応じたプロパティを使いましょう。
同時送信・大量アクセスによる不具合
GASとGoogleフォームの連携では、同時送信や大量アクセスが発生すると、スクリプトの競合や遅延処理などの不具合が起こりやすくなります。
Google Apps Scriptは同時実行数の制限があり、複数のユーザーが同時にフォーム送信した場合、スクリプトが同時に複数回実行される仕組みです。このとき、スプレッドシートや外部サービスへの書き込み・通知処理が重複して走ると、データの競合や上書き、順序の乱れなどが発生する場合があります。
同時送信・大量アクセスによる不具合が発生した場合は、処理の分割や有料プランへの切り替えを検討しましょう。
GASは無料で使えますか?
GASはGoogleアカウントさえあれば、誰でも追加費用なしで利用可能です。
開発環境の構築やサーバー準備も不要で、ブラウザ上ですぐにスクリプトの作成・実行ができます。ただし、より大規模な利用や業務用途で実行回数やストレージの上限を拡張したい場合は、有料のGoogle Workspaceアカウントを契約すれば制限が緩和されます。
一般的な個人利用や小規模ビジネスであれば無料での利用で十分です。
ノーコードで高機能なフォームを作るなら「formrun」がおすすめ!
ノーコードで高機能なフォームを作るなら、フォーム作成ツール「formrun」がおすすめです。formrunには主に下記の3つの特徴があります。
- フォーム作成が簡単にできる
- テンプレートが豊富
- 豊富なメール機能
それぞれの特徴を詳しく解説します。
フォーム作成が簡単にできる
非エンジニアでもマウスだけの簡単な操作中心でフォームが作成できるため、フォーム利用までに準備期間が短い場合にも役立ちます。
同じフォーム作成ツールのGoogleフォームと比べてもセキュリティ条件が高く、細かい設定まで機能が豊富となっているため、ビジネス利用目的では、formrunのユーザーのうち7割がGoogleフォームから変更しています。
メールアドレスがあれば無料登録可能!無期限で無料プランが利用できるのでformrunでぜひフォームを作成してみてください。
テンプレートはこちらをご覧ください。
>> テンプレート一覧
テンプレートが豊富
formrun(フォームラン)は、120種類以上のテンプレートが用意されています。
お問い合わせ、アンケート、申込みなどのさまざまな用途のテンプレートが用意されているため幅広い業種や用途に合わせたフォームに対応できます。
formrunのテンプレートはそのまま利用できるリッチな見た目で、用途に合わせて必要な設問が最適な順番で配置されているため、設問タイトルを少し修正するだけで簡単に高クオリティのフォームを作成可能です。
テンプレートの設問に項目の追加・削除・順番の変更などもワンクリックで簡単に修正できます。
ぜひformrunのテンプレートを使用して高クオリティなフォームを作成してみてください。
豊富なメール機能
formrun(フォームラン)には、メールを送付する機能が目的に合わせて3種類用意されています。
1.自動メール返信
フォームに回答直後に、サンクスメールや回答内容の確認メールを自動返信できます。申込フォームや登録フォームなど、フォーム回答後対応してほしい手順がある場合は、メール内に記載すれば迷わず対応を進めることもできます。
2.個別メール機能
フォーム回答時に質問がある場合、回答者に個別にメールを送信できます。サポート窓口などの場合、合わせてメールテンプレートを利用すれば対応品質を揃え、ミスなくスピーディに対応できるため、メール返信にかかる時間を大幅に削減可能です。
3. 一斉メール配信
フォーム回答者や手元に用意したメールアドレスリストに対して、一斉メールを配信できます。対応ステータスや、顧客ラベル別にセグメントメールが可能です。配信結果もメールごとに開封率、リンククリック率、エラー率が確認できるため、施策の改善にも役立ちます。
また、自動メール返信、一斉メール配信、個別メール機能それぞれ、フォームで得た顧客情報をメール本文や件名に変数として挿入可能です。
フォーム作成から、フォーム回答者へのコミュニケーションまでformrunで一貫してできるため、顧客対応管理もスムーズになります。
GASとGoogleフォームを連携して業務を効率化しましょう!
GASとGoogleフォームを連携すれば、フォームの作成や運用が効率化でき、さまざまな自動化やカスタマイズが可能です。たとえば、GASを使えばフォーム送信時に自動で特定のメールアドレスへ詳細な通知を送ったり、回答内容に応じて外部サービスに連携したりできます。
また、スクリプトでフォームの内容を一括で追加・編集できるため、大量の設問を扱う場合や定期的な内容更新も容易になります。GASとGoogleフォームを連携して、業務を効率化しましょう。
しかし、ノーコードで高機能なフォームを作りたい場合には、現在使用しているフォーム作成ツールの機能が不十分に感じられることもあるでしょう。その場合、formrunを使えば下記の7つのメリットがあります。
- プログラミング不要
- 集計がリアルタイムで行える
- 入力補助機能がつけられる
- ワンクリックでrecaptcha設定可能
- お問い合わせ管理、メール対応も可能
- Googleアカウントがある人は簡単に登録が可能
- 万全のセキュリティ
無料での利用も可能なため、ぜひ一度、試してみてはいかがでしょうか。
Sansan、BASE、hey、DMMなど幅広い規模の企業に導入されており、自社に最適なフォームを作ることが可能です。
▼ビジネス利用では、formrunユーザーの”7割”がGoogleフォームから変更しています。
Googleフォームとformrunの違いを知りたい方は、こちらをご覧ください。
>> formrunとGoogleフォームの違い