今日の日付と同じスプレッドシートに日付があったら、
「本日、作業があります」といったメールを送信させるスクリプトを作成しています。
作成したスクリプトは以下です。
日付の設定がうまくできていないのか、今日の日付と行事日の日付が一致していないけど、
「行事があります」といったメールが送信されてしまいます。
以下のスクリプトでどこを修正したらよいかご教示いただけないでしょうか。
行事開始日は、J列です。
function
1 2var sheet = SpreadsheetApp.getActiveSheet(); // シートの取得 3 var startRows = 2; // 開始行数 4 var sheetData = sheet.getSheetValues(startRows, 1, sheet.getLastRow(), 16); // シートのデータを取得(2次元配列) 5 var dtLimit = new Date(); // 現在時刻を取得 6 7 sheetData.forEach(function(value, index) { // シートの各行ごとにデータを取り出す 8 9 var dtLimit = new Date(); // 現在時刻を取得 10 11 var title = "本日、〇〇行事があります。"; //メール件名 12 var body =''; 13 body += '本日、〇〇行事があります。\n'; 14 body += '\n'; 15 body += '準備をお願いします。\n'; 16 body += '詳細は以下から確認してください。\n'; 17 body += '\n'; 18 body += '【詳細はこちらで確認】 \n'; 19 body += ' 〇〇〇〇〇 \n'; 20 body += '\n'; 21 22 23 if (value[11] && !value[14] && !value[15] && new Date(value[7]).getDate() == dtLimit.getDate()) { // 承認済み、かつ、返却なし、かつ、キャンセルなし、かつ、行事日が今日より前ならば 24 GmailApp.sendEmail('メールアドレス', title , body); // メールを送信する 25 26 } 27 }); 28}
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。