【问题标题】:Google spreadsheet trigger for hiding and showing row用于隐藏和显示行的 Google 电子表格触发器
【发布时间】:2015-03-05 00:53:48
【问题描述】:

目前,我使用 onEdit,当我更改单元格或单元格区域中的值时,或者在删除、插入行/列时调用它。

function onEdit(e) {
  Browser.msgBox('edit: ' + (e.range && e.range.getA1Notation()));
}

通过 UI 隐藏或显示行时,未调用 onEdit 函数。

有没有办法让我的脚本收到隐藏/显示行事件的通知?

更新:我在 google-apps-script-issues 中为此写了一个功能请求: https://code.google.com/p/google-apps-script-issues/issues/detail?id=4670

更新:根据 Kriggs 的回答,可以使用可安装的触发器 onChange

这就是它的工作原理。

但是,在 e(事件)对象上,没有范围属性可用于查看隐藏或显示的行/范围。此外,e.source 上不存在 Krigg 建议的 Row 方法。

我们如何利用 onChange 来隐藏或显示行号?

【问题讨论】:

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


    【解决方案1】:

    我刚刚发现onChange(),它专门处理工作表中结构的更改,显然必须在触发器菜单中激活,然后选择一个功能。要知道 ROW,您可以像 onEdit() 一样使用 e.source.Row();

    我测试了一下,发现它与基于时间和 onEdit() 一样不稳定,连续 3 次隐藏只有 1 次被记录。

    【讨论】:

    • 是的,这是通过隐藏和显示行触发的。但是Row 方法在e.source 上不存在。我会用更多细节更新我的问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-13
    • 1970-01-01
    相关资源
    最近更新 更多