0

我正在按照“定义电子表格菜单”教程中的规定做所有事情。使用 onOpen 事件处理程序修改菜单。

我已经在“脚本库”中公开了这个“文本到列”脚本,但我担心当自定义菜单需要很长时间才能弹出时,下载的用户可能会感到困惑。

第一次加载脚本被证明是一种痛苦。很多时候完全错过了 onOpen 触发器。似乎触发器设置不正确,因为手动重置 onOpen 触发器将修复它。

对于个人使用,我认为这是一个小麻烦,但对于共享脚本,它成为一个支持问题。

注意:每次后续加载始终需要大约 7 秒才能出现,这还可以,但远非理想。

这是 onOpen 处理程序:

function onOpen() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var menuEntries = [];
  menuEntries.push({ name:"Text to columns", functionName:"textToColumns" });
  menuEntries.push({ name:"Text to columns (custom separator)", functionName:"textToColumnsCustom" });
  menuEntries.push(null);
  menuEntries.push({ name:"Columns to Text", functionName:"columnsToText" });
  menuEntries.push({ name:"Columns to Text (custom separator)", functionName:"columnsToTextCustom" });
  ss.addMenu("Advanced", menuEntries);
}

注意:这是在只有一个用户的新(即空)电子表格上测试的。

4

1 回答 1

0

我不确定,但用户必须登录我想,如果没有,我曾经遇到过这个问题并通过制作两个或多个触发器来解决它,所有触发器都处于打开状态并且功能相同,但是尝试上网速度超过 30KB/s 以确保问题出在代码上,而不是您的设备上

于 2013-03-19T21:59:10.987 回答