1

本文中包含的代码使用插件中的可安装“On Edit”触发器。一条错误消息即将在控制台当我通过文档作为参数的ID .forSpreadsheet(ssss)在谷歌Apps脚本:可安装触发器onEdit in addon

此附加试图在一个文档中创建触发器,它不是目前正在使用英寸

看起来像附加组件不能正确识别活动工作表。功能应该放在哪里? onInstall()onOpen()

function createSpreadsheetEditTrigger() { 
     var ssss = SpreadsheetApp.getActive().getId(); 

    ScriptApp.newTrigger('onEditTrigger') 
    .forSpreadsheet(ssss) 
    .onEdit() 
    .create(); 
} 

function onEditTrigger(e){ 
    isSheetName('SheetName') && sendingEmailFunction(e); 
} 

回答

1

不要使用ID。

目前:

var ssss = SpreadsheetApp.getActive().getId(); 

应该是:

var ssss = SpreadsheetApp.getActive(); 

参数ss.forSpreadsheet(ss)必须是一个电子表格对象。您正在输入一个字符串。 getId()返回一个字符串。始终查看返回的数据类型以及所需的数据类型。

Google Documentation

+0

得到了相同的错误反正... – Daniel

+0

绑定到电子表格,或独立脚本的项目?如果它是独立脚本,并且正在运行“运行”按钮中的代码,则不存在活动的电子表格。您需要以测试模式运行代码,或者从已发布的加载项运行代码。您可以将附件发布为“不公开”,而无需通过审批流程。 –