Googleフォーム送信時に自動返信メールおよび、控えを登録アドレス(担当者メールアドレス記載 部分に書いたアドレス)に送りたいです。
Googleフォームを使用して、イベントの申し込みフォームを使用していました。
先日まで(最後に作成したのは2018年10月末頃だったと思います)同じスクリプトエディタの内容でできましたが、
本日、同様にフォームを作成したところ、以下のエラーメッセージが発生しました。
自動返信メールも、控えのメールも飛ばなくなりました。
ソースコードの「担当者メールアドレス記載」は使用できるGmailを記載しております。
発生している問題・エラーメッセージ
TypeError: undefined からプロパティ「response」を読み取れません。(行 2、ファイル「コード」)
該当のソースコード
function submitForm(e){
var itemResponses = e.response.getItemResponses();
var message = '';
var username = '';
var mail = '';
for (var i = 0; i < itemResponses.length; i++) {
var itemResponse = itemResponses[i];
var question = itemResponse.getItem().getTitle();
var answer = itemResponse.getResponse();
if (question == '名前'){
username = answer;
}
if (question == 'メールアドレス'){
mail = answer;
}
message += (i + 1).toString() + '. ' + question + ': ' + answer + '\n';
}
var address = '担当者メールアドレス記載';
var title = 'お申し込みフォームが送信されました';
var content = '以下の内容でフォームが送信されました。\n\n' + message;
GmailApp.sendEmail(address, title, content);
var title2 = 'お申し込みありがとうございます';
var content2 = username + ' 様\n\nこの度はお申し込みいただきありがとうございます。\n'
+ 'のちほど担当者よりご連絡させていただきますので、いましばらくお待ちください。\n'
+ 'このメールに心当たりの無い方は、お手数ですがこのアドレスまでご連絡いただきますようお願い申し上げます。\n\n'
+ '※このメールはお問い合わせをいただいた方に自動送信されます。\n\n'
+ '担当者名\n'
+ 'mail 担当者メールアドレス記載';
GmailApp.sendEmail(mail, title2, content2);
}
ソースコード
試したこと
以前作ったフォームをコピーして作成していましたので、一度スクリプトエディタの内容も削除し、保存。
改めて、11月10日以前に使えた同様の内容をコピーして再度保存を行いましたがエラーが出ました。
補足情報(FW/ツールのバージョンなど)
分かりにくいところがありましたら申し訳ありませんが、ご教示いただけましたら幸いです。
・今まで使えていた別のフォームで試した所、同じエラーが出ました。
・トリガーの設定(小さなポップアップからG Suite Developer Hubというページに飛ぶようになった)が変わってから初めて行いました。
・初心者でWEBの情報で見よう見まねで作ったものですが、今まで問題なく使えていました。
こちらのサイトも初めてです。無作法がございましたら、申し訳ありません。
回答3件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。