【发布时间】:2012-05-11 17:20:06
【问题描述】:
你好,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 点”是什么意思?在这两个小时之间随机出现一次?
该脚本仅在我不必登录 Google 文档时才有意义。也许我在这里完全误解了一些东西......脚本只有在我登录到谷歌文档时才有效吗? (但即使我是,到目前为止,脚本也不会使用时间驱动触发器执行)。
非常感谢您对此的看法。 莫里茨
【问题讨论】:
标签: google-sheets google-apps-script