【问题标题】:Google sheets button with "assigned script" disappears带有“已分配脚本”的 Google 表格按钮消失了
【发布时间】:2017-09-04 21:22:22
【问题描述】:

我有一个电子表格,其中有几个脚本附加到图像上,作为许多人使用的按钮。奇怪的是,每个工作簿中都有一组三个按钮,其中一个(每次都相同)总是“丢失”分配的脚本并再次变成图像。

我一直无法弄清楚是什么导致脚本与图像“分离”。我不能在这里分享具体的表格,因为它包含敏感信息,但如果它有帮助,我可以模拟一个类似的表格。主要想知道是否有人知道是什么导致脚本与按钮分离。我唯一的理论是脚本触发器可能会导致它,所以我只是关闭了触发器,我们将在接下来的几天里看看情况如何。

感谢并为含糊的问题道歉!

function tabs() {
  var s = SpreadsheetApp.getActive(),
      t = s.getSheetByName('Tabs'),
      n = s.getSheets()
      .map(function(s, i) {
        return [s.getName()]
      });
  t.getRange('A1:A').clear();
  t.getRange(1, 1, n.length, 1).setValues(n)
}

【问题讨论】:

  • 你能至少分享一下脚本吗?如果您认为这无济于事,请创建一个新的电子表格,将脚本复制到那里,然后共享不含敏感数据的工作表。
  • 应该想到的!我添加了脚本代码。它只是抓取工作表中的所有选项卡名并将它们弹出到“选项卡”工作表中。如果有任何帮助,那就是工作簿中的“第一个”按钮,但我不明白为什么会导致问题。
  • 链接在什么情况下会丢失?是每次加载工作表时吗?每天?
  • 还不能完全确定。它似乎没有时间限制,也没有特别与关闭后打开工作表有关。这可能与多人使用工作表有关,但这很奇怪,因为其他两个脚本按钮“粘”得很好。我可以重现该问题的唯一确定方法是右键单击按钮并下拉菜单选项,转到“分配脚本...”,然后“取消”而不更改脚本分配或清除它。然后它每次都解离。不过,这也发生在其他按钮上,所以不是问题。
  • 我将函数重命名为与脚本“文件名”本身相同的名称,并稍微改变了代码的结构,使其与我完成其他脚本的方式更加统一。到目前为止〜4天后,这很有帮助,从那以后就没有这个问题了。我剩下的唯一理论是,这是由多人同时以某种方式访问​​和编辑电子表格造成的——这一理论将在周一人们再次登录以大规模使用时进行测试。

标签: google-apps-script google-sheets


【解决方案1】:

我面临同样的问题。因此,我添加了 OnOpen(e) 事件,如下所示,插件显示所需的菜单。这解决了问题。

function onOpen(e) {    
    var menu = SpreadsheetApp.getUi().createAddonMenu(); // Or DocumentApp.
    if (e && e.authMode == ScriptApp.AuthMode.NONE) {
        // Add a normal menu item (works in all authorization modes).
        menu.addItem('Update Master List', 'Prepare_Lists_Data');
    } else {
        // Add a menu item based on properties (doesn't work in AuthMode.NONE).
        var properties = PropertiesService.getDocumentProperties();
        var workflowStarted = properties.getProperty('workflowStarted');
        if (workflowStarted) {
        menu.addItem('Update Master List', 'Prepare_Lists_Data');
        } else {
        menu.addItem('Update Master List', 'Prepare_Lists_Data');
        }
        menu.addToUi();
    }
}

【讨论】:

    猜你喜欢
    • 2015-04-25
    • 2019-01-31
    • 1970-01-01
    • 2011-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-04
    相关资源
    最近更新 更多