我正在尝试制作一个脚本,该脚本每天从正在更改的电子表格中发送电子邮件(使用 TODAY() 函数过滤自身,以便每天将新数据放在某个工作表上)。我的问题是我需要电子邮件的消息来包含工作表中大约 15 行和 7 列的数组。此代码只想抓取一个单元格作为整个消息。
此外,它还具有将“EMAIL_SENT”放入单元格以确保它不会重新发送它的功能。问题是为此目的,我想让它每晚触发并仅发送一封电子邮件,然后在第二天晚上触发并再次发送相同的电子邮件......数组中的数据将发生变化。
谢谢你的帮助!亚历克斯
var EMAIL_SENT = "EMAIL_SENT";
var NA = "N/A";
function sendEmails2() {
var ss = SpreadsheetApp.openById( 'MY ID' ),
sheet = ss.getSheetByName( 'Daily Reports' ),
startRow = 2; // First row of data to process
var numRows = 2000; // Number of rows to process
var dataRange = sheet.getRange(startRow, 6, numRows, 13)
var data = dataRange.getValues();
for (var i = 0; i < data.length; ++i) {
var row = data[i];
var emailAddress = row[10]; // First column
var message = row[11]; // Second column
var emailSent = row[12]; // Third column
if ((emailSent != EMAIL_SENT) && ((emailAddress != "#N/A") && (emailAddress != 0))) { // Prevents sending duplicates
var subject = row[0];
MailApp.sendEmail(emailAddress, subject, message);
sheet.getRange(startRow + i, 18).setValue(EMAIL_SENT);
// Make sure the cell is updated right away in case the script is interrupted
SpreadsheetApp.flush();
}
}
}