【问题标题】:Custom function needs to be activated by clicking on a custom menu自定义功能需要通过点击自定义菜单来激活
【发布时间】:2017-08-29 21:33:45
【问题描述】:

我私下发布了一个 Google 表格插件。

当我安装它时,系统会打开一个新的 Google 工作表,自定义功能起作用。但是,如果我创建一个新的 Google 表格,自定义功能首先不起作用。我需要点击Add-ons ==> TotallyNew ==> Use,打开侧边栏,自定义功能也可以。

我只是不明白为什么Use会激活自定义功能。

有人知道原因吗?

function myFun() {
  console.log("inside myFun");
  return "myFunValue"
}

function onInstall(e) {
  console.info("inside onInstall");
  onOpen(e);
}

function onOpen(e) {
  console.info("inside onOpen");
  console.info(e.authMode);

  SpreadsheetApp.getUi().createAddonMenu()
      .addItem('Use', 'use')
      .addToUi();
}

function use() {
  console.info("inside Use")
  var html = HtmlService.createHtmlOutputFromFile('Index.html')
      .setTitle('My custom sidebar')
      .setWidth(300);

  SpreadsheetApp.getUi()
      .showSidebar(html)
}

【问题讨论】:

标签: google-apps-script google-sheets google-apps custom-function google-apps-script-addon


【解决方案1】:

你很接近。将createAddonMenu 更改为createMenu

function onOpen(e) {
  console.info("inside onOpen");
  console.info(e.authMode);

  SpreadsheetApp.getUi().createMenu()
      .addItem('Use', 'use')
      .addToUi();
}

【讨论】:

  • 当我Test as add-on时,它在控制台中给我一个错误:Google Apps Script: Cannot find method createMenu().,我找不到菜单。
  • 我试过SpreadsheetApp.getUi().createMenu('myMenu').addItem('Use2', 'use').addToUi();,在自定义函数方面和createAddonMenu有同样的问题。
猜你喜欢
  • 2015-05-30
  • 1970-01-01
  • 2019-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多