你好,Stack Overflow 上的好人。
我编写了一个小脚本,它从电子表格中提取报价并通过电子邮件将其发送给用户。这个想法是,脚本每天运行一次,提取电子表格中的下一个报价并将其发送到电子邮件地址。
脚本如下所示:
function sendEmails() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; // First row of data to process
var numRows = 1000; // Number of rows to process
var dataRange = sheet.getRange(startRow, 2, numRows, 3);
var data = dataRange.getValues();
for (i in data) {
var row = data[i];
if(row[2]=="yes") {
continue;
}
var emailAddress = "myemail@email.com"; // email to send to
var message = '"'+row[0]+'"'+"\n\n"+"- "+row[1]; // Second column
startRow = parseInt(startRow)+parseInt(i);
var subject = "";
MailApp.sendEmail(emailAddress, subject, message);
sheet.getRange(startRow,4).setValue("yes");
SpreadsheetApp.flush();
break;
}
}
当我手动运行该脚本时,它运行良好。
现在我添加了一个如下所示的脚本触发器:
发送电子邮件 | 时间驱动 | 日间计时器 | 晚上 7 点到 8 点
不幸的是,该函数没有被执行,报价也没有被发送。
我在理解时间驱动触发器方面也有一点问题。“晚上 7 点到 8 点”是什么意思?在这两个小时之间随机一次?
仅当我不必登录 Google Docs 时,该脚本才有意义。也许我在这里完全误解了一些东西......脚本只有在我登录到谷歌文档时才有效吗?(但即使我是,到目前为止,脚本也不会使用时间驱动触发器执行)。
我非常感谢您对此的想法。莫里茨