Google脚本onchange触发器触发两次

时间:2020-05-06 07:33:42

标签: google-apps-script google-sheets triggers onchange

我正在通过手动添加Google脚本onChange触发器。工作表正在从外部来源获取数据,并在接收到数据时创建新行。因此,发生了2个事件。

  1. 添加了新行
  2. 数据写在这一新行上。

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

1 个答案:

答案 0 :(得分:0)

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

因此,对于onChange,例如事件对象changeType可以包含值

  • 编辑
  • INSERT_ROW
  • INSERT_COLUMN
  • REMOVE_ROW
  • REMOVE_COLUMN
  • INSERT_GRID
  • REMOVE_GRID
  • FORMAT
  • OTHER

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

示例:

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