GASを使ったGoogleフォームのカスタマイズ

Google Apps Script(GAS)を使用することで、Googleフォームを自動化し、カスタマイズすることが可能です。この記事では、Googleフォームのカスタマイズ方法について具体的な例を交えながら解説します。

 

moun45.hatenablog.com

 

Google Apps Scriptとは?

Google Apps Script(GAS)は、Googleが提供するJavaScriptベースのスクリプト言語で、Googleクラウドアプリケーション(Googleフォーム、Google Sheets、Google Docsなど)を自動化するためのツールです。GASを使うことで、繰り返し行う作業や複雑な処理を簡単に自動化できます。

スクリプトエディタの起動方法

Googleフォームでスクリプトエディタを起動するには、以下の手順を行います。

  1. Googleフォームを開く:カスタマイズしたいフォームを開きます。
  2. スクリプトエディタを起動:メニューから「その他」→「スクリプトエディタ」を選択します。

フォームのカスタマイズ例

1. フォームの作成と基本設定

以下のスクリプトは、新しいGoogleフォームを作成し、基本的な質問を追加する例です。

function createForm() {
var form = FormApp.create('新しいフォーム');
form.setTitle('お問い合わせフォーム')
.setDescription('以下の項目にご記入ください。');

form.addTextItem()
.setTitle('名前')
.setRequired(true);

form.addTextItem()
.setTitle('メールアドレス')
.setRequired(true);

form.addParagraphTextItem()
.setTitle('お問い合わせ内容')
.setRequired(true);
}

このスクリプトは、新しいフォームを作成し、名前、メールアドレス、お問い合わせ内容の3つの質問を追加します。

2. フォームの回答をGoogle Sheetsに連携

Googleフォームの回答を自動的にGoogle Sheetsに記録する設定も可能です。以下のスクリプトは、フォームの回答が送信されるたびにGoogle Sheetsにデータを追加します。

function setupTrigger() {
var form = FormApp.openById('フォームID');
ScriptApp.newTrigger('onFormSubmit')
.forForm(form)
.onFormSubmit()
.create();
}

function onFormSubmit(e) {
var responses = e.values;
var sheet = SpreadsheetApp.openById('スプレッドシートID').getActiveSheet();
sheet.appendRow(responses);
}

このスクリプトでは、フォームの回答が送信されると、onFormSubmit関数が呼び出され、回答データがスプレッドシートに追加されます。

3. 自動返信メールの設定

フォームの回答者に自動返信メールを送信するスクリプトも役立ちます。以下のスクリプトは、フォームの回答を受け取った後、自動的に確認メールを送信します。

function onFormSubmit(e) {
var responses = e.namedValues;
var email = responses['メールアドレス'][0];
var name = responses['名前'][0];
var message = 'こんにちは ' + name + 'さん、\n\nお問合せありがとうございます。内容を確認し次第、ご連絡いたします。';

MailApp.sendEmail(email, 'お問合せありがとうございます', message);
}

このスクリプトは、回答者のメールアドレスに対して、自動的に確認メールを送信します。

4. カスタムメニューの追加

Googleフォームにカスタムメニューを追加して、特定のスクリプトを簡単に実行できるようにすることも可能です。以下のスクリプトは、カスタムメニューを追加する例です。

function onOpen() {
var ui = FormApp.getUi();
ui.createMenu('カスタムメニュー')
.addItem('フォームをリセット', 'resetForm')
.addToUi();
}

function resetForm() {
var form = FormApp.getActiveForm();
var items = form.getItems();
for (var i = 0; i < items.length; i++) {
form.deleteItem(items[i]);
}
createForm();
}

このスクリプトは、フォームが開かれたときにカスタムメニューを追加し、「フォームをリセット」メニューアイテムを選択するとフォームをリセットします。

まとめ

Google Apps Scriptを使用することで、Googleフォームの様々な作業を自動化し、カスタマイズすることが可能です。スクリプトエディタの使い方を覚え、基本的なスクリプトを作成・実行することで、フォームの作成、回答の記録、自動返信メールの送信、カスタムメニューの追加など、多岐にわたる自動化が実現できます。公式ドキュメントやサンプルコードを活用しながら、自分の業務に適したスクリプトを作成し、効率的な業務運営を目指しましょう。

 

moun45.hatenablog.com

 

最後によろしければ下記ボタンをクリックお願いします!

[blog:g:11696248318757263968:banner]