Я нахожусь в создании системы регистрации добровольцев для организации, с которой я работаю.Я хочу написать скрипт, чтобы каждый раз, когда я запускаю скрипт из выпадающего меню, он сканировал электронную таблицу построчно и определял состояние приложения.Если статус открыт, я хочу, чтобы он затем определил, было ли отправлено электронное письмо с открытым статусом, если нет, отправил электронное письмо и изменил значение значения open_email для этой строки на «SENT».Если статус приложения закрыт, я хочу, чтобы он делал то же самое для закрытого электронного письма.
Таблица добровольцев
По сути, я хочу запускать эту функцию всякий раз, когда мыполучить новые приложения для добровольцев, чтобы они получали электронные письма в зависимости от статуса приложения.
Мне удалось написать функцию для сканирования строк и отправки электронных писем в зависимости от состояния приложения, но я не могу показатьсячтобы выяснить, как заставить его изменить значение ячейки после отправки соответствующего электронного письма.
Вот код функции слияния:
//function for menu item 1
function volunteerMailMerge() {
SpreadsheetApp.getUi();
//references
var ss = SpreadsheetApp.openById("1Ei86oBsafBc6GdFeKFFGdbljyUzbWRFRF8eWvnoYdIU");
var sheet = ss.getSheetByName("Application Status");
var range = sheet.getDataRange(); //sets range to all data in the spreadsheet
var values = sheet.getDataRange().getValues(); //translates the range into values in an array
var headers = values.shift(); //removes headers from values array
//loop through rows
for (var i = 0; i < values.length; i++) {
var firstName = values[i][0];
var lastName = values[i][1];
var email = values[i][2];
var position = values[i][3];
var status = values[i][4];
//mailmerge
if (status == "OPEN" && openEmail == "") {
//if app status is open, and openEmail hasn't been sent, do this
GmailApp.sendEmail(email, "SAFE Volunteer Application",{
htmlBody: "email body",
});
//change value of column 5 on the current row
} else {};
};
}