前提・実現したいこと
Googleフォームについての質問です。
現在Googleフォームに回答が入ると、内容すべてがメールに転送、そして回答者に自動返信されるようにしています。
先日、写真のアップロードができることを知りフォームに追加しました。
私が実現したいこと:
Googleフォームに、回答者がアップロードした写真もメールに転送、そして回答者に自動返信したいです。
写真は2枚アップロードできるように設定しています。
URL表示ではなく、画像を添付したいです。
実際:
写真の転送設定をする前はメールが転送、回答者に自動返信されていたのですが、
写真の転送設定をしテストをしたところ自分にも回答者にも何も送られてこなくなりました。
スクリプト初心者です。
これを実現することができる、スクリプトエディタのコードの書き方を教えていただけませんか。
よろしくお願い致します。
発生している問題・エラーメッセージ
TypeError: Cannot read property 'response' of undefined submitForm @ コード.gs:3
該当のソースコード
function submitForm(e){
var itemResponses = e.response.getItemResponses();
for (var i = 0; i < itemResponses.length; i++) {
var itemResponse = itemResponses[i];
var question = itemResponse.getItem().getTitle();
var answer = itemResponse.getResponse();
if (question == '確認'){ var ok = answer; } if (question == 'お名前'){ var username = answer; } if (question == 'メールアドレス'){ var usermail = answer; } if (question == '番号'){ var number = answer; } if (question == '選択'){ var choice = answer; } if (question == '理由'){ var reason = answer; } if (question == 'NG'){ var ng = answer; } if (question == '相談'){ var consultation = answer; } if(question == '{添付画像}'){ var img = DriveApp.getFileById(answer[0]); options.attachments = img.getAs(MimeType.JPEG); //JPEG前提 } if(question == '{添付画像2}'){ var img2 = DriveApp.getFileById(answer[0]); options.attachments = img2.getAs(MimeType.JPEG); //JPEG前提 } else{ message += (i + 1).toString() + '. ' + question + ': ' + answer + '\n'; }
}
/* 管理者宛メール送信設定 */
var address = '・・・@gmail.com';
var title = '[///へのお問合せを受信しました]';
var content = '下記の内容で、お問合せを受信しました。\n\n'
- '【質問1(確認)】:' + ok + '\n'+
- '【質問2(番号)】:' + number + '\n'+
- '【質問3(選択)】:' + choice + '\n'+
- '【質問4(理由)】:' + reason + '\n'+
- '【質問5(NG)】:' + ng + '\n'+
- '【質問6(相談)】:' + consultation + '\n'+
- '\n\n'
- '※このメールは自動送信メールです。';
var options = {from: '・・・@gmail.com', name: '名前', replyTo: usermail};
GmailApp.sendEmail(address, title, content, options);
/* ユーザー宛メール送信設定 */
var title2 = '[///へのお問合せを受付けました]';
var content2 = username
-
' 様\n\n'
-
'この度は、お問合せいただき、ありがとうございます。\n'
-
'下記の内容で、受付けました。\n'
-
'後ほど折り返しご連絡させていただきますので、いましばらくお待ちください。\n\n'
-
'【質問1(確認)】:' + ok + '\n'+
-
'【質問2(番号)】:' + number + '\n'+
-
'【質問3(選択)】:' + choice + '\n'+
-
'【質問4(理由)】:' + reason + '\n'+
-
'【質問5(NG)】:' + ng + '\n'+
-
'【質問6(相談)】:' + consultation + '\n'+
-
'\n\n'
-
'----------\n'
-
'\n\n※このメールは自動送信メールです。';
var options2 = {from: '・・・@gmail.com', name: '///お問合せフォーム'};
GmailApp.sendEmail(usermail, title2, content2, options2);
}
補足情報
下記ページを参考に作成いたしました。
https://shogo-log.com/google-form-mail/
あなたの回答
tips
プレビュー