Google电子表格脚本onChange事件未触发

Ram*_*muk 4 onchange google-sheets google-apps-script

我正在尝试触发onChange事件,但它无法正常工作.

我有以下简单的代码:

function onChange(){
  Logger.log("onChange event fired");
}

function onEdit(){
  Logger.log("onEdit event fired");
}
Run Code Online (Sandbox Code Playgroud)

https://developers.google.com/apps-script/understanding_events

根据此文档,插入行时应触发onChange事件.它不会被解雇.操作单元格时会触发onEdit函数,但是当用户也插入行时我需要触发一个事件.

有什么想法吗?

Mar*_*rio 9

尝试使用带有一个参数的签名:

function onChange(e){
  Logger.log("onChange event fired");
}

function onEdit(e){
  Logger.log("onEdit event fired");
}
Run Code Online (Sandbox Code Playgroud)

然后在ScriptEditor中注册这些函数:

在此输入图像描述


小智 5

onChange 是一个可安装的触发器。使用以下函数安装触发器。

    function createSpreadsheetChangeTrigger() {
    var ss = SpreadsheetApp.getActive();
    ScriptApp.newTrigger('onChange')
      .forSpreadsheet(ss)
      .onChange()
      .create();
    }  
Run Code Online (Sandbox Code Playgroud)


Ram*_*muk 3

在脚本编辑器中,我单击“资源”菜单并选择“所有触发器”,从那里我能够注册我的 onChange 函数,以便在电子表格更改时实际触发。

编辑:人们告诉我用代码来做到这一点,但我无法让它工作。发现隐藏在文档中的 gui 方法。