【发布时间】:2020-04-14 06:07:04
【问题描述】:
我只需要脚本 (sendEmail02()) 从表中仅收集邮件包含在第 2 列中的人的数据,并将所有数据以一封信的形式发送给他,因此每个人依次发送。有必要在迭代期间从第 2 列读取地址并收集数据并以单独的信函发送给每个收件人。如果每个用户一次只收到一封信,其中包含所有必要行的内容,那就太好了。
function sendEmail02() {
var ss = SpreadsheetApp.openById(sheetID);
var ActiveSheet = ss.getSheetByName("Sheet1");
if (ActiveSheet.getName() == 'Sheet1') {
var StartRow = 2;
var RowRange = ActiveSheet.getLastRow() - StartRow + 1;
var WholeRange = ActiveSheet.getRange(StartRow,1,RowRange,3);
var AllValues = WholeRange.getValues();
var message = "";
for (i in AllValues) {
var CurrentRow = AllValues[i];
if (CurrentRow[0] == "sent" && CurrentRow[1] != ""&& CurrentRow[2] != "") {
message +=
"<p><b> ???? </b>" +
"<p><b> Email: </b>" + CurrentRow[1] + "</p>" +
"<p><b> Text: </b>" + '<font color="green">' + CurrentRow[2] + '</font>' + "</p>" + "</p>
<br><br>";
var setRow = parseInt(i) + StartRow;
ActiveSheet.getRange(setRow, 1).setValue("done");
}
}
var recipientsTO = 'test@google.com'; // this must be collected from Col2.But how?
var SendTo = (MyEmail + "," + recipientsTO);
var Subject = "Hello" ;
if (message) {
MailApp.sendEmail({
bcc: SendTo,
subject: Subject,
htmlBody: message,
});
}
}
}
从上面的代码
var recipientsTO = 'test@google.com'; // this must be collected from Col2.But how?
【问题讨论】:
-
问题是什么?
-
我不知道如何从 Col2 收集所有唯一的电子邮件并运行检查以发送邮件。
-
请edit 明确您的问题。
-
您似乎希望它从 onEdit 触发器运行,对吗?
标签: google-apps-script google-sheets