gpt4 book ai didi

google-apps-script - onedit 为什么不能发送电子邮件?

转载 作者:行者123 更新时间:2023-12-02 00:16:08 24 4
gpt4 key购买 nike

我有这个简单的脚本,它应该在单元格更改时发送电子邮件

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() 等简单触发器具有一组有限的可能操作,因为它们在未经授权的情况下运行, 请参阅 the documentation了解更多详情。

所以你描述的这种行为是正常的。

您应该按照同一文档页面中的说明使用可安装的触发器。

这里是文档的摘要:

这些简单的触发器运行以响应 Google 电子表格中的操作,并且它们以事件用户的身份运行。例如,如果 Bob 打开电子表格,则 onOpen 函数将以 Bob 的身份运行,而不管是谁将脚本添加到电子表格。出于这个原因,简单触发器在允许执行的操作上受到限制:当电子表格以只读模式打开时,它们无法执行。他们无法确定当前用户。他们无法以该用户的身份访问任何需要身份验证的服务。例如,Google 翻译服务是匿名的,可以通过简单的触发器访问。 Google 日历、Gmail 和网站不是匿名的,简单的触发器无法访问这些服务。他们只能修改当前的电子表格。禁止访问其他电子表格。有关事件权限的更多信息,请参阅从特定于容器的触发器执行。

关于google-apps-script - onedit 为什么不能发送电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13014515/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com