Apps Scriptリファレンス: Apps Script Reference |障害・課題追跡: IssueTracker |Google Workspace: Status Dashboard - Summary

2025年5月11日日曜日

Google Formsで回答者にメールアドレスを入力してもらう


Googleフォームでの回答者のメールアドレス収集方法は3つあります
  1. 収集しない: 匿名になる(デフォルトはこれ)
  2. 確認済み: Googleアカウントを収集する
  3. 回答者からの入力: 回答者が入力したアドレス(Googleアカウント以外を含む)

今回は 3. 回答者からの入力: 回答者が入力したアドレス(Googleアカウントを含む) について書いていきます


Googleアカウント以外のメールアドレスも収集したいときはこれ


回答の「メールアドレスを収集する」で「回答者からの入力」にします



フォームの編集画面

設定 > 回答 > メールアドレスを収集する > 回答者からの入力

この設定でフォームを公開します


フォームの回答画面


回答の要約画面と個別画面は Google Formsで回答者の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) 


関連記事




Latest post

Google Formsでスプレッドシートに用意した質問を読み込んでみる(クイズ対応)

今回はGoogleフォームでスプレッドシートからデータを読み込んでクイズを作ります 事前に「質問・選択肢・フィードバック」をスプレッドシートに入力して それを読み込んでクイズモードのフォームを作ってみます 事前に用意するスプレッドシートの構造 A列に質問 B列に選択肢 先頭が正解...