0

前段时间,我为我的一个电子表格编写了一个脚本,它使用可安装的触发器 onOpen 来启动 SpreadsheetApp.getUi 函数。

该函数如下所示:

function addMenu()
{
  // adding custom menu 
  var ui = SpreadsheetApp.getUi();
  ui.createMenu('New menu')
  .addSubMenu(ui.createMenu('menu')                  
              .addItem('item', 'functionName')
              .addSubMenu(ui.createMenu('additive')
                          .addItem('subitem', 'subfunctionName')))
  .addToUi();
};

这个菜单使用从电子表格触发的可安装触发器 onOpen 就像一个魅力。这些菜单项调用的函数使用 UserProperties,所以我确保它不是匿名运行的。

本周我注意到当我打开电子表格时菜单不再起作用 - 只有当我直接从脚本编辑器调用它时它才起作用。

我不知道如何解决这个问题 - 我没有对脚本进行任何更改,并检查以确保没有其他人干预它。到现在为止,它是同一个脚本。

我将非常感谢对此的帮助,至少可以说令人费解。

谢谢!

4

1 回答 1

0

子菜单是否应该相互嵌套?如果没有,您可能正在寻找:

function addMenu() {
  var ui = SpreadsheetApp.getUi();
  ui.createMenu('New menu')
    .addSubMenu(ui.createMenu('menu')                  
      .addItem('item', 'functionName')
    )
    .addSubMenu(ui.createMenu('additive')
      .addItem('subitem', 'subfunctionName')
    )
    .addToUi()
};
于 2017-03-29T08:41:51.337 回答