我这个简单的脚本,当一个小区改变应该发送电子邮件
function onEdit(e) {
var doc = e.source;
var r = doc.getActiveRange().getValue();
if (r == "Niccolò"){
var a = doc.getActiveRange().setBackground('#ff0000');
var b = GmailApp.sendEmail('name@gmail.com', 'subject', 'body');
}
}
这个功能也改变单元格颜色。 问题是,单元格颜色的作品,所以它的变化,同时不发送任何电子邮件。 它看起来那么简单,我不明白为什么不呢作品!
喜欢简单的触发器onEdit()
onOpen(
或onFormSubmit()
有一组有限的可能采取的行动,因为它们运行未经授权,看到的文档了解更多详情。
所以,这种行为你描述是正常的。
而不是在同一个文档页面说明你应该使用一个可安装的触发器。
这里是文档的摘要:
这些简单的触发响应在谷歌电子表格的操作运行,它们运行的活跃用户。 例如,如果Bob打开电子表格,然后的OnOpen函数运行鲍勃,无论谁加入脚本到电子表格中。 出于这个原因,简单的触发器在他们被允许做什么限制:当电子表格以只读方式打开,它们将无法执行。 他们无法确定当前用户。 他们不能访问要求身份验证该用户的任何服务。 例如,谷歌翻译服务是匿名的,并且可以通过简单的触发器进行访问。 谷歌日历,Gmail和站点是不是匿名的,简单的触发器不能访问这些服务。 他们只能修改当前的电子表格。 访问其他电子表格是被禁止的。 有关事件权限的详细信息,请参阅从容器专有触发执行。