前提・実現したいこと
Googleフォームでアンケートを作成し、自動返信設定を完了しました。
2点お聞きしたいことがあります。
テスト回答をするとメールは来ますが、件名が
「【失敗】Googleフォームにメールアドレスが指定されていません」と表示されます。
前任者が作成し正常に作動していたものをコピー&ペーストし、細かい点を修正したのですが
このような件名になるのは初めてです。
メール送信先の管理者アドレスは課内代表アドレスに設定しています。
フォームの質問事項にて
①回答者本人のメールアドレス
②所属部署の代表メールアドレス
を入力するようにしたいのですが、不可能でしょうか。
自動返信は①のアドレスを対象にしたいので、①は「回答の検証」を行い、②は行っていません。
1.の件について調べていると、メールアドレスが2件以上あると
正常に作動しないような回答があったのですが、関係がありますでしょうか。
初心者の質問で恐縮ですが、ご教授いただけますと幸いです。
発生している問題・エラーメッセージ
【失敗】Googleフォームにメールアドレスが指定されていません
該当のソースコード
function myFunction() { //------------------------------------------------------------ // 設定エリアここから //------------------------------------------------------------ // 件名、本文、フッター var subject = "2020年度 総会 登録完了通知メール"; var body = "いつもお世話になっております。\n" + " \n" + "審議事項につき、ご回答いただきありがとうございました。\n" + "以下の内容にて登録が完了しましたのでご連絡いたします。\n" + "---------------------------------------------------------------------------------\n"; var footer = "---------------------------------------------------------------------------------\n\n" + "ご不明な点がございましたら、\n" + "本メールへの返信にてご連絡をお願いいたします。\n\n" // 入力カラム名の指定 var NAME_COL_NAME = 'お名前'; var MAIL_COL_NAME = 'メールアドレス'; var TIMESTAMP_LABEL = 'タイムスタンプ'; // メール送信先 var admin = "example@gmail.com"; // 管理者(必須) var sendername = "ayah"; // 送信者名(必須) var cc = ""; // Cc: var bcc = admin + ""; // Bcc: var reply = admin; // Reply-To: var to = ""; // To: (入力者のアドレスが自動で入ります) //------------------------------------------------------------ // 設定エリアここまで //------------------------------------------------------------ try{ // スプレッドシートの操作 var sheet = SpreadsheetApp.getActiveSheet(); var rows = sheet.getLastRow(); var cols = sheet.getLastColumn(); var rg = sheet.getDataRange(); Logger.log("rows="+rows+" cols="+cols); // メール件名・本文作成と送信先メールアドレス取得 for (var i = 1; i <= cols; i++ ) { var col_name = rg.getCell(1, i).getValue(); // カラム名 var col_value = rg.getCell(rows, i).getValue(); // 入力値 body += "【"+col_name+"】\n"; body += col_value + "\n\n"; if ( col_name === NAME_COL_NAME ) { body = col_value+" 様\n\n"+body; } if ( col_name === MAIL_COL_NAME ) { to = col_value; } if ( col_name === TIMESTAMP_LABEL ) { col_name = '申込日時'; } } body += footer; // 送信先オプション var options = {name: sendername}; if ( cc ) options.cc = cc; if ( bcc ) options.bcc = bcc; if ( reply ) options.replyTo = reply; // メール送信 if ( to ) { MailApp.sendEmail(to, subject, body, options); }else{ MailApp.sendEmail(admin, "【失敗】Googleフォームにメールアドレスが指定されていません", body); } }catch(e){ MailApp.sendEmail(admin, "【失敗】Googleフォームからメール送信中にエラーが発生", e.message); } }
試したこと
上記2.に記載した②のメールアドレスを削除、スプレッドシートからも削除してみましたが
状況は変わりませんでした。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。