这篇文章中包含的代码是在插件中使用可安装的“On Edit”触发器。当我在Google Apps脚本中将文档的ID作为参数传递给.forSpreadsheet(ssss)
时,控制台中会出现一条错误消息:
此加载项正在尝试在当前未使用的文档上创建触发器。
似乎加载项无法正确识别活动工作表。应该在哪里放置功能? onInstall()
,onOpen()
?
function createSpreadsheetEditTrigger() {
var ssss = SpreadsheetApp.getActive().getId();
ScriptApp.newTrigger('onEditTrigger')
.forSpreadsheet(ssss)
.onEdit()
.create();
}
function onEditTrigger(e){
isSheetName('SheetName') && sendingEmailFunction(e);
}
答案 0 :(得分:1)
不要使用身份证。
目前:
var ssss = SpreadsheetApp.getActive().getId();
应该是:
var ssss = SpreadsheetApp.getActive();
ss
的参数.forSpreadsheet(ss)
必须是电子表格对象。您正在输入一个字符串。 getId()
返回一个字符串。始终查看返回的数据类型以及所需的数据类型。
答案 1 :(得分:0)
function createSpreadsheetEditTrigger() {
var ss = SpreadsheetApp.getActive();
ScriptApp.newTrigger('myFunction')
.forSpreadsheet(ss)
.onOpen()
.create();
}