Googelフォームでフォームを作成し、自動返信メールの設定を行いましたが、日付フォーマットのエラーで受信できない状況です。
初期のままだと、日付の表示が見ずらいため、yyyy-MM-dd HH:mm:ssになるように変更しました。
ブラウザによって、Chromeでは問題なく受信できます。
が、IEでは、パラメータ(String,String,String)が Utilities.formatDate のメソッドのシグネ
チャと一致しません。というメールが届き、受信できません。
Googelフォームの自動返信メールの設定は、下記のサイトを見てコピペしました。
(プログラミング知識ありません。)
下記のコードでどこを修正すれば良いでしょうか?
ご教授のほどよろしくお願いします。
gas
1function sendMailGoogleForm() { 2 Logger.log('sendMailGoogleForm() debug start'); 3 4 //------------------------------------------------------------ 5 // 設定エリア 6 //------------------------------------------------------------ 7 8 // 件名、本文、フッター 9 var subject = "[お問い合わせありがとうございます。]"; 10 11//複数行入力したい 12 var body 13 ="お問い合わせをいただきありがとうございます。\n\n\ 14 後日、担当者よりご連絡させていただきます。\ 15\ 16\ 17 "; 18 var footer 19 = "------------------------------------------------------------\n\n\ 20 XXXXX\ 21 TEL:XXXXXX\ 22 ------------------------------------------------------------"; 23 // 入力カラム名の指定 24 var NAME_COL_NAME = "名前"; 25 var MAIL_COL_NAME = "メールアドレス"; 26 27 28 // メール送信先 29 var admin = "schoolasaka@scces.co.jp"; // 管理者(必須) 30 var sendername = "自動返信メール";//送信者名(必須) 31 var cc = ""; // Cc: 32 var bcc = admin; // Bcc: 33 var reply = admin; // Reply-To: 34 var to = ""; // To: (入力者のアドレスが自動で入ります) 35 36 37 //------------------------------------------------------------ 38 // 設定エリアここまで 39 //------------------------------------------------------------ 40 41 try{ 42 // スプレッドシートの操作 43 var sheet = SpreadsheetApp.getActiveSheet(); 44 var rows = sheet.getLastRow(); 45 var cols = sheet.getLastColumn(); 46 var rg = sheet.getDataRange(); 47 Logger.log("rows="+rows+" cols="+cols); 48 49 // メール件名・本文作成と送信先メールアドレス取得 50 for (var i = 1; i <= cols; i++ ) { 51 var col_name = rg.getCell(1, i).getValue(); // カラム名 52 var col_value = rg.getCell(rows, i).getValue(); // 入力値 53// 日付フォーマットの変換 54// 他にも変換したいカラムがある場合はこのif分をコピーしてカラム名・日付フォーマットを変更する 55if ( col_name === '送信日時' ) { 56 col_value = Utilities.formatDate(col_value, "JST", "yyyy-MM-dd HH:mm:ss");; 57 } 58 if ( col_name === '来校希望日時【第1希望】' ) { 59 col_value = Utilities.formatDate(col_value, "JST", "yyyy-MM-dd HH:mm:ss");; 60 } 61 if ( col_name === '来校希望日時【第2希望】' ) { 62 col_value = Utilities.formatDate(col_value, "JST", "yyyy-MM-dd HH:mm:ss");; 63 } 64 body += "【"+col_name+"】\n"; 65 body += col_value + "\n\n"; 66 if ( col_name === NAME_COL_NAME ) { 67 body = col_value+" 様\n\n"+body; 68 } 69 if ( col_name === MAIL_COL_NAME ) { 70 to = col_value; 71 } 72 } 73 body += footer; 74 75 // 送信先オプション 76 var options = {name: sendername}; 77 if ( cc ) options.cc = cc; 78 if ( bcc ) options.bcc = bcc; 79 if ( reply ) options.replyTo = reply; 80 81 // メール送信 82 if ( to ) { 83 MailApp.sendEmail(to, subject, body, options); 84 }else{ 85 MailApp.sendEmail(admin, "【失敗】Googleフォームにメールアドレスが指定されていません", body); 86 } 87 }catch(e){ 88 MailApp.sendEmail(admin, "【失敗】Googleフォームからメール送信中にエラーが発生", e.message); 89 } 90}
あなたの回答
tips
プレビュー