- GASを使ってやりたいこと
■スプレッドシートに記載した表をGメールに貼り付けてHTML形式で送信する
出来ていること
①Gメールの送信
②スプレッドで作成した表のメールへの記載
出来ないこと
日付の形式変更「Tue Dec 11 2018 17:00:00 GMT+0900 (JST)」になる。
→したいこと:「yyyy/mm/dd」の表示にしたい
教えてほしいこと
Utilities.formatDateを利用することはわかっているのですが
スプレッドの1列目に記載している日付の読み取りや形式を変更してのメールへの記載がうまくいきません。
内容確認いただけると幸いです。
function nouki() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheetByName("★配信まとめ"); var sheet2= ss.getSheetByName("mail本文"); var dataRange = sheet2.getDataRange(); var dtRange = sheet.getDataRange(); var myValues = dataRange.getValues(); var myValue = dtRange.getValues(); var LR = sheet.getRange(1,3).getValue(); var lastRow = sheet.getLastRow(); var lastColum = sheet.getLastColumn(); var subject = sheet2.getRange(4, 4).getValues(); var body = sheet2.getRange(5, 4).getValues(); var MAIL_ADDRESS_TO = sheet2.getRange(8,4).getValues(); var MAIL_ADDRESS_CC =''; var format = 'YYYY/MM/DD'; if(LR > 0){ //メール本文配列を定義 var item=[] //それぞれのフォントなどhtmlで設定 var style = '<span style="background-color: rgb(0, 0, 255);"><font face="Meiryo UI">'; var style1 = '<font face="Meiryo UI">'; var style2 = '<font face="Meiryo UI"><div>'; var style3 = '<font color="#ff0000" face="Meiryo UI">'; var style4 = " style='border-collapse: collapse;border:1px solid #000000;'"; var style5 ='<font color="white">'; //本文挿入 item.push(style2 + body + "<BR></div></font>") //データを取得し、HTMLのテーブルを作成。 item.push("<table" + style4 + " cellpadding='3'>"); //テーブル内項目、1行目 item.push("<tr" + style4 + ">") for(j=1;j<8;j++){ var values = sheet.getRange(2,j).getValues(); item.push("<td bgcolor=' #FFA07A' nowrap" + style4 + ">"+style1 +values+"</font></td>"); } //テーブルリスト、3行目~ //ここがうまくいかないところ。。 //1列目に日付があるため、その表記を「yyyy/mm/dd」に変更したいがうまく読み取ってくれません for(var i=3;i<lastRow;i++){ var hiduke = sheet.getRange(i,2).getValues(); var uhiduke = Utilities.formatDate(myValue[i][0],"yyyy/MM/dd"); for(var i=3;i<lastRow;i++) item.push("<tr" + style4 + ">") for(j=1;j<8;j++) { var values = sheet.getRange(i, j).getValues(); item.push("<td nowrap" + style4 + ">" + style1+ values+"</font></td>"); } item.push("</tr>") } item.push("</table>"); item.push("<br><br>"); item.push(style2+"以上、ご確認の程、よろしくお願いいたします。</font><br><br><br>"); } var result = Browser.msgBox("メッセージを送信しますか?" ,Browser.Buttons.YES_NO); if(result=="yes"){ //メール送信 GmailApp.sendEmail(MAIL_ADDRESS_TO, subject, body, {cc:MAIL_ADDRESS_CC,from:'*******@*****', name:'******',htmlBody :item.join("\n")}); } };
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。