はじめまして
上記の表から退会通知日=今日の日付になったらメッセージにアカウント名とグループ名を取得し通知を送信する仕組みをgasとline messaging apiで作っております。
しかし繰り返し処理がうまく書けずに悩んでおります。
問題点1 上から三つまでしかチェックされていない
問題点2 07/23の日付もまるがついてしまっている
javascript
1function checkAcount(){ 2//年月日を取得 3var today = new Date(); 4today.setHours(0, 0, 0, 0); 5// 利用しているシート 6var data = SpreadsheetApp.openById('xxxxxxx').getSheetByName('シート1'); 7//最終行を取得 8var last_row = data.getLastRow(); 9//退会の行のみ取得 10var cansellRow=data.getRange(2,4,last_row-1,1).getValues(); 11 for(var i = 2; i < cansellRow.length; i++) { 12 var cansellrow =new Date(cansellRow[i]); 13 console.log(cansellrow.getTime()); 14 if(cansellrow.getTime() ==today.getTime() ){ 15 var accountName = data.getRange(i,2).getValue(); 16 var groupName = data.getRange(i,1).getValue(); 17 data.getRange(i,5).setValue("◎"); 18 }else{ 19 data.getRange(i, 5).setValue("×"); 20 } 21 } 22 }
問題点1はどのような解決方法があるのでしょうか?
問題点2
console.log(cansellrow.getTime());
この結果
D 2020-06-25T18:46:17.012Z 1593097200000
D 2020-06-25T18:46:17.224Z 1593097200000
D 2020-06-25T18:46:17.740Z 1593097200000
が返ってきました。
多分日付の比較の仕方がまずいのかなと思います。
このあと退会通知日の5日前にはスプレッドシートの該当部分の色をかえるという処理を加えるのでわかりやすいような日付比較を教えていただけますと幸いですよろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/06/26 04:13
2020/06/26 04:21
2020/06/26 05:33