Google apps script 谷歌脚本onchange触发器触发了两次

Google apps script 谷歌脚本onchange触发器触发了两次,google-apps-script,google-sheets,triggers,onchange,Google Apps Script,Google Sheets,Triggers,Onchange,我使用谷歌脚本onChange触发器手动添加它。工作表从外部源获取数据,并在接收数据时创建新行。因此有两个事件正在发生 将添加一个新行 数据将写入这一新行 出于同样的原因,onChange()触发器运行了两次,但我只需要运行一次。任何帮助都会很好。谢谢 使用获取有关触发器触发原因的信息 因此,对于onChange,例如,事件对象changeType可以包含这些值 编辑 插入第行 插入_列 删除第行 拆下U柱 插入网格 移除网格 格式 其他 这可以帮助您指定仅当发生某种类型的更改时才运行脚本

我使用谷歌脚本onChange触发器手动添加它。工作表从外部源获取数据,并在接收数据时创建新行。因此有两个事件正在发生

  • 将添加一个新行
  • 数据将写入这一新行
  • 出于同样的原因,onChange()触发器运行了两次,但我只需要运行一次。任何帮助都会很好。谢谢

    使用获取有关触发器触发原因的信息 因此,对于
    onChange
    ,例如,事件对象
    changeType
    可以包含这些值

    • 编辑
    • 插入第行
    • 插入_列
    • 删除第行
    • 拆下U柱
    • 插入网格
    • 移除网格
    • 格式
    • 其他
    这可以帮助您指定仅当发生某种类型的
    更改时才运行脚本

    样本:

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

    非常感谢你。我刚刚尝试了上面提到的方法,它给出了我想要的确切结果。我会继续测试几天,如果有任何问题或者我需要其他帮助,我会回来。再次感谢:)很高兴能帮助你!出于文档目的,如果可以,请接受答案(✓) 这对你很有帮助——它还可以帮助将来遇到同样问题的其他人找到解决方案:)