【问题标题】:Google App Script onEdit not working after shifting tab sheet移动标签页后,Google App Script onEdit 不起作用
【发布时间】:2021-06-11 15:01:31
【问题描述】:

我将简单的触发器设置为 onEdit 并使用下面的代码来执行它。 一切正常,但是当我尝试移动执行主函数的选项卡时,整个触发器停止工作并且 typeError 出现“无法读取未定义的属性'范围'”

我有 3 张纸。函数运行的主工作表,我的 onEdit 发生的第二张工作表和辅助工作表。当我将主工作表移动到第二个或最后一个选项卡时,触发器将不起作用。

function onEdit(e) {
  if (e.range.getA1Notation() == 'C9') {
    if (/^\w+$/.test(e.value)) {        
      this[e.value]();
      e.range.clear();
    }
  }
}

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    您不能运行 onEdit,因为它会返回该错误。即使您移动标签,您的 onEdit 也应该可以工作,只需在工作表上尝试即可。

    【讨论】:

    • 当我移动标签的位置时,该功能不会正确触发。但是当我将它移回第一个时,一切正常。这可能是我的主要功能问题吗?
    【解决方案2】:

    我找到了原因。问题在于我如何打开另一张工作表的主要功能代码。 当我的主工作表位于第一个选项卡中时,我可以通过 openbyURL 获取它。当我将标签移开时,这将不起作用。

    var mainSheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Name');
    

    我用上面的衬里替换了 openbyurl,一切正常

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-03-10
      • 1970-01-01
      • 2021-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多