我是js的新手,这是我的第一个剧本 . 每当我编辑(写入值)到某个单元格时,我的项目的想法就是在我的google calander中创建事件 . 问题是我不能使用onEdit()函数,因为我需要权限(从工作表级别使用calander) . 所以我创建可安装的触发器,如下所示:

function createEditTrigger() {
   var ss = SpreadsheetApp.getActive();
   ScriptApp.newTrigger('ToCalendar')
    .forSpreadsheet(ss)
    .onEdit()
    .create();
}

一切都很好但现在我想创建这个触发器自动触发到我的工作表不像我现在手动 .

我的想法是使用函数onOpen(),如下所示:

function onOpen() {
   createEditTrigger();
  Logger.log("hi");
}

但它当然会产生许多相同的触发器 .

有没有办法只自动创建一次触发器?我将感激所有的答案!