Я пытаюсь отправить электронное письмо на адрес, указанный в столбце A, когда в раскрывающемся списке Состояние в столбце H установлено значение «Завершено». Вот что у меня есть:
function onOpen() {
sendemail();
}
// This constant is written in column C for rows for which an email
// has been sent successfully.
var EMAIL_SENT = 'EMAIL_SENT';
var COMPLETED = 'Completed';
/**
* Sends non-duplicate emails with data from the current spreadsheet.
*/
function sendemail() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; // First row of data to process
var numRows = 400; // Number of rows to process
var dataRange = sheet.getRange(startRow, 1, numRows, 3); //grabbing ranges
of values to get
var data = dataRange.getValues(); //getting values
var status = sheet.getRange(startRow, 8, numRows, 1); //grabbing ranges of
//values to get
var data_status = status.getValues(); //getting values
//logic: if a field is populated and both Column C isn't populated, and
//Status is Completed, populate corresponding row in column C and send email.
for (var i = 0; i < data.length; ++i) {
var row = data[i];
var emailAddress = row[0]; // First column
var message = "";
var emailSent = row[2]; // Third column
if (emailSent != EMAIL_SENT && data_status == COMPLETED) { // Prevents
sending duplicates
var subject = 'Sending emails from a Spreadsheet';
MailApp.sendEmail(emailAddress, subject, message);
sheet.getRange(startRow + i, 3).setValue(EMAIL_SENT);
// Make sure the cell is updated right away in case the script is
interrupted
SpreadsheetApp.flush();
}
}
}
Этот код находится под сильным влиянием Google, и я могу получить всю информацию из столбца H, я просто не уверен, что я делаю неправильно. Проблема в том, что это не работает. Если я уберу раздел and из оператора if, он будет работать нормально, и если я отладлю код, я смогу увидеть массив значений, переданных мне из столбца H. Для каждого "завершенного" значения мне нужно отправить электронная почта, однако я не хочу, чтобы электронная почта отправлялась, если статус задан как завершенный, а столбец C имеет значение EMAIL_SENT. Спасибо за вашу помощь