复制电子表格时,谷歌脚本携带触发器



好吧,我正在为我的工作做一个项目。我们正在使用Google Drive来跟踪工作订单。情况如下:

1) 您填写了描述您的工作订单的申请表。2) 谷歌脚本将请求表单中的生成信息转换为请求报告并创建跟踪表单3) 工作人员通过填写跟踪表在工单上签字。

很简单,但问题来了。我最初把所有的工单合并在一个电子表格上,你可以输入工单的ID,但人们总是错误地输入正确的#,所以我的老板希望每个工单都有自己的单独跟踪表。一旦这个新流程实施,她希望我尽可能少碰它。

这就是问题的症结所在,我使用了一个包含所有谷歌脚本代码的跟踪表单模板,但触发器无法复制。我尝试使用请求表单代码来运行跟踪表单代码,但它太复杂了,而且容易出错。我试着在模板中写一个onOpen代码(为项目经理创建一个菜单来授权触发器),希望它能复制过来,但这也不起作用。

有人能告诉我如何解决这个问题吗??谢谢

当制作电子表格/脚本的新副本时,通过"资源"菜单创建的触发器将不会保留。如果你想以编程方式创建它们,那么它们就会(仍然需要为它运行一个函数并进行授权)。

比如。。。

function myFunction() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
ScriptApp.newTrigger('logDate').forSpreadsheet(ss).onFormSubmit().create();
}
function logDate() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('Sheet1');
s.getRange('A1').setValue(new Date());
};

最新更新