Googleフォームでの回答者のメールアドレス収集方法は3つあります
- 収集しない: 匿名になる(デフォルトはこれ)
- 確認済み: Googleアカウントを収集する
- 回答者からの入力: 回答者が入力したアドレス(Googleアカウント以外を含む)
今回は 3. 回答者からの入力: 回答者が入力したアドレス(Googleアカウントを含む) について書いていきます
Googleアカウント以外のメールアドレスも収集したいときはこれ
回答の「メールアドレスを収集する」で「回答者からの入力」にします
フォームの編集画面
設定 > 回答 > メールアドレスを収集する > 回答者からの入力
この設定でフォームを公開します
フォームの回答画面
Apps Script で作成する場合
以下の Code.gs で formName から colors の値を書き換えて
collectEmail() を実行すると
上記のような「回答者からの入力」のフォームが作成されます
Code.gs
function collectEmail() {
const formName = 'Favorite Color Survey';
const description = 'Please tell us your favorite color.';
const title = 'What is your favorite color?';
const colors = ['Red', 'Blue', 'Green', 'Yellow'];
const form = FormApp.create(formName);
form.setDescription(description);
// ★ 回答者にメールアドレスを記入させる欄を追加(="回答者からの入力")
form.setCollectEmail(true); // これだけでUI上は "回答者からの入力" に対応
// 選択式の質問を追加
const item = form.addMultipleChoiceItem();
item.setTitle(title)
.setChoiceValues(colors)
.showOtherOption(true)
.setRequired(false);
form.setPublished(false);
Logger.log('Form Edit URL: ' + form.getEditUrl());
}
Tips
「回答者からの入力」の場合
Googleアカウントへのログインは不要で
誰でもメールアドレスを自由に入力できますが
回答者がメールアドレスを入力ミスした場合は正しいアドレスを取得できません
Reference
setCollectEmail(collect)
関連記事