【问题标题】:Publish Google Sheet addon and sheet template发布 Google 表格插件和表格模板
【发布时间】:2023-03-18 00:13:01
【问题描述】:

我开发了一个创建自定义菜单的 google sheet 脚本。该菜单项验证工作表中的数据,但基于 Google 工作表模板,该模板定义了用户必须在何处输入每个单元格值以进行验证。

我想将菜单脚本作为插件发布。因此,如果用户安装了插件但没有使用 google sheet 模板,则数据将无法按预期进行验证,因为他不知道在哪里输入每个单元格值。

是否有机会添加插件下载工作表模板或任何其他解决方法?

我将 Google 表格发布到网络,但该选项删除了菜单栏,因此用户无法使用插件。

哪种方法最适合这种要求?

问候

【问题讨论】:

  • 也许您可以使用无模式对话框来允许用户选择所有要验证的单元格,您可以使用获取活动范围列表来捕获它们
  • 谢谢!我相信这对我的用户来说会很先进,如果不是,我需要自动化大部分工作表,否则我会收到很多问题。
  • 您的用户无法使用控制键进行多项选择?然后点击一个按钮?

标签: google-apps-script google-sheets chrome-web-store google-apps-script-addon


【解决方案1】:

方法

一种可能的解决方法是在运行插件时将模板公开并复制到活动电子表格中。

这是一个例子:

function onOpen(e) {
  SpreadsheetApp.getUi().createAddonMenu()
      .addItem('Insert Template', 'copyTemplate')
      .addItem('Your validation function', 'validationFunction')
      .addToUi();
}

function copyTemplate() {
  let ss = SpreadsheetApp.getActiveSpreadsheet();
  let template = SpreadsheetApp.openById('template_id').getSheets()[0];
  let newss = template.copyTo(ss);
  newss.activate();
}

参考

Sheet .copyTo()

.createAddonMenu()

【讨论】:

  • 谢谢!因此,您说要将模板发布到 Web 并将模板表复制到用户在其本地计算机中使用的空白表,对吗?有道理,只是想知道是否有很多用户这样做,如果我因使用基础设施资源而被 Google 收取复制和粘贴费用,你知道吗?
  • 你好,是的,完全一样。我在使用 Google Apps 脚本服务时知道此配额限制:developers.google.com/apps-script/guides/services/quotas
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-03-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-03
  • 1970-01-01
  • 2019-04-08
  • 2013-03-10
相关资源
最近更新 更多