我想使用Google Script为我的工作表创建一个简单的时间触发器,我就像在docs中所描述的那样,但是当我调用函数时出现错误:
Google Apps: You do not have permission to call newTrigger
我尝试在互联网上找到解决方案,但没有得到任何结果。有人能帮助我吗?谢谢!
P.S。我的代码:
ScriptApp.newTrigger("consolius")
.timeBased()
.everyMinutes(1)
.create();
function consolius() {
SpreadsheetApp.getUi().alert('Hello, world!');
}
答案 0 :(得分:2)
评论中提到的限制不适用于您的用例,它们适用于add-ons only。右info is here。
但是,即使您实际上可以创建一个定时器触发器来每分钟运行一个函数,您也无法使用您尝试的方法,因为定时器触发器无法与Ui交互。
如果查看错误通知,您会看到该消息:
Details:
Start Function Error Message Trigger End
7/3/15 4:08 PM consolius Cannot call SpreadsheetApp.getUi() from this context. (line 26, file "clean sheet") time-based 7/3/15 4:08 PM
另一个兴趣点:您应该包含在函数中创建触发器的脚本,否则每次在该项目中运行 ANY 其他函数时都会创建一个新触发器,包括该函数触发呼叫,这将很快变得相当混乱! (每次调用任何函数时都会执行“全局”的所有内容。)
最后但并非最不重要:您不能在自定义函数中使用此类代码,它必须位于您从菜单或按钮运行的脚本中。