onChange将在不更改电子表格的情况下触发

时间:2019-06-11 20:33:15

标签: google-apps-script google-sheets scripting eventtrigger

这是一个Google触发器行为问题。 (我认为)。 想知道这是否正常。

我有(几张)工作表具有脚本的“ on-change”触发器。 我注意到,在不更改工作表以及关闭工作表的情况下,它们会以某种方式被触发。 仅使用一个onChange触发器即可在触发时增加单元格中的值,因此该单元格值在一天中会增加,至少每15分钟触发一次,有时每分钟触发一次。

我尝试剥离工作表,除去所有IMPORTDATA和其他外部数据引用,因此工作表中没有任何内容。 非常基础。

查看开发人员中心-我的执行,我看到它显示了这些执行。由于同一张基本表有一些类似的副本,因此有些副本将在数小时内不会触发更改,然后开始快速显示触发器,而另一张表似乎会表现一段时间。

就像我说的那样,工作表上没有太多内容,只有几个公式引用了同一工作表上的单元格,仅此而已。

1 个答案:

答案 0 :(得分:0)

我在一个电子表格上设置了一个测试,以查看是否可以得到相同的结果:

function catchChanges(e) {
  var ts=Utilities.formatDate(new Date(), Session.getScriptTimeZone(), "E MMM dd, yyyy hh:mm:ss");
  var ss=SpreadsheetApp.openById('ssid');
  var sh=ss.getSheetByName('Change Log');
  sh.appendRow([ts,e.changeType,e.triggerUid,e.user,e.authMode]);
}