Google 脚本 onchange 触发器触发了两次

Google script onchange trigger is firing twice

我正在通过手动添加 google 脚本 onChange 触发器。 sheet 正在从外部源获取数据并在收到数据时创建新行。所以有 2 个事件正在发生。

  1. 添加了新行
  2. 数据写入新行。

出于同样的原因,onChange() 触发器被 运行 触发两次,但我只需要 运行 一次。任何帮助都会很棒。谢谢。

使用event objects获取有关触发器触发原因的信息

因此,对于 onChange,例如可以包含值

的事件对象 changeType
  • 编辑
  • INSERT_ROW
  • INSERT_COLUMN
  • REMOVE_ROW
  • REMOVE_COLUMN
  • INSERT_GRID
  • REMOVE_GRID
  • 格式
  • 其他

这可以帮助您指定您的脚本只有在发生某种类型的 Change 时才会 运行。

样本:

function runMeOnIsertRow(e){
  if(e.changeType == 'INSERT_ROW'){
    //do something
  } else{
    return;
  }
}