以前質問させて頂いた、googleフォームからメール自動配信をする方法について追加で質問です。
メール配信時に、フォームから反映されているスプレットシートをリンクさせてたいのですが、
スクリプトが分からず問合せになります。
ハイパーリンク関数を使うのでしょうか?
※メール本文にリンクが出るようにする(メールの一番下にスプレットシートが添付されている状態)
現在作成しているスクリプトは下記のとおりです。
リンクを貼り付けるようなスクリプトをご教示頂きたく、よろしくお願い致します。
javascript
1 2function myFunction() { 3 4 5// 件名、本文、フッター 6var subject = "お申込書の送付"; 7var body 8 ="ご担当者様\n\n" 9 +"お疲れ様です。\n\n" 10 + "以下の内容にてお申込みがありましたのでご対応をお願い致します。\n" 11 + "---------------------------------------------------------------------------------\n"; 12var footer 13 = "---------------------------------------------------------------------------------\n\n" 14 + "どうぞよろしくお願い致します。\n" 15 16 17 + "====================================================\n" 18署名 19+ "====================================================\n" 20 21 22// 入力カラム名の指定 23var NAME_COL_NAME = '申込者名'; 24var MAIL_COL_NAME = 'メールアドレス'; 25var TIMESTAMP_LABEL = 'タイムスタンプ'; 26var BODY_FORM_NAME = '申込書番号'; //フォーム作成時に設定した項目名 27var BODY_FORM_NAME = '申込種別'; //フォーム作成時に設定した項目名 28var BODY_FORM_NAME = '契約種別'; //フォーム作成時に設定した項目名 29var BODY_FORM_NAME = '希望日'; //フォーム作成時に設定した項目名 30var BODY_FORM_NAME = '申込者名'; //フォーム作成時に設定した項目名 31var BODY_FORM_NAME = '電話番号'; //フォーム作成時に設定した項目名 32var BODY_FORM_NAME = '交換所'; //フォーム作成時に設定した項目名 33var BODY_FORM_NAME = '専用線ID'; //フォーム作成時に設定した項目名 34var BODY_FORM_NAME = '報告要否'; //フォーム作成時に設定した項目名 35var BODY_FORM_NAME = '特記事項'; //フォーム作成時に設定した項目名 36var BODY_FORM_NAME = 'primedrive送付キー' //フォーム作成時に設定した項目名 37 38// メール送信先 39var admin = "アドレス"; // 管理者(必須) 40var cc = ""; // Cc: 41var reply = admin; // Reply-To: 42var to = ""; // To: (入力者のアドレスが自動で入ります) 43 44//------------------------------------------------------------ 45// 設定エリアここまで 46//------------------------------------------------------------ 47 48try{ 49// スプレッドシートの操作 50var sh = SpreadsheetApp.getActiveSheet(); 51var rows = sh.getLastRow(); 52var cols = sh.getLastColumn(); 53var rg = sh.getDataRange(); 54Logger.log("rows="+rows+" cols="+cols); 55 56// メール件名・本文作成と送信先メールアドレス取得 57for (var j = 1; j <= cols; j++ ) { 58var col_name = rg.getCell(1, j).getValue(); // カラム名 59var col_value = rg.getCell(rows, j).getValue(); // 入力値 60 61 62if ( col_name === MAIL_COL_NAME ) { //メールアドレス 63to = col_value; 64} 65if ( col_name === TIMESTAMP_LABEL ) { //タイムスタンプ⇒申込日時 66col_name = '申込日時'; 67} 68// 日付のフォーマットを指定。 69 70if (col_name === '希望日' && col_value != '') { // 2018/10/05修正 71col_value = Utilities.formatDate(col_value, 'Asia/Tokyo', "YYYY'年'MM'月'dd'日'"); 72} 73body += "【"+col_name+"】\n"; 74body += col_value + "\n\n"; 75} 76body += footer; 77 78 79 80// 送信先オプション 81var options = {}; 82if ( cc ) options.cc = cc; 83if ( reply ) options.replyTo = reply; 84 85// メール送信 86if ( to ) { 87MailApp.sendEmail(to, subject, body, options); 88}else{ 89MailApp.sendEmail(admin, "【失敗】Googleフォームにメールアドレスが指定されていません", body); 90} 91}catch(e){ 92MailApp.sendEmail(admin, "【失敗】Googleフォームからメール送信中にエラーが発生", e.message); 93} 94}
回答1件
あなたの回答
tips
プレビュー