如何将Google Sheet自定义功能设置为加载项

时间:2016-06-23 16:26:37

标签: google-apps-script google-sheets

我正在为Google图纸创建一个自定义功能,可以使用Google表格的附加组件进行访问。

问题是当我运行Add-On作为测试时,当我输入我的自定义公式时,它会给我这个错误:#NAME?错误 未知功能:'myfunction'。

为简单起见,我刚刚使用了以下简单的函数,所以我知道问题不在于我的函数代码

function myFunction(input) {
  var output = input * 2;
  return output;
}

2 个答案:

答案 0 :(得分:1)

在网上搜索和Stack Overflow上的问题/答案后,我相信截至2017年5月,这是一个带有GAS附加组件的Open Bug。如果你得出同样的结论,我很好奇。

我尝试了谷歌自己的date_add_and_substract附加示例,但无法让自己开始工作。它应该说明为当前用户安装在当前文档中启用附加组件状态之间的区别。当启用时,加载项应该加载以下客户功能以使用日期:

  • DATESUBTRACT()
  • DATETEST()
  • #NAME?

当我将独立脚本作为测试为加载项运行时,启用它,然后在单元格中输入任何自定义函数我得到相同的Unknown function: 'XXXXXXX' DROP function IF EXISTS `test`; DELIMITER $$ USE `A_DB`$$ CREATE FUNCTION `test` () RETURNS BOOLEAN BEGIN RETURN TRUE; END$$ DELIMITER ; 错误。

Sample Function BUG in GAS Add-Ons

事实上,这似乎是Open Bug Tickets之一。

答案 1 :(得分:0)

我还尝试编写自定义函数并以加载项的形式发布,但在电子表格中得到“错误未知函数”。

在上面浪费了几天,终于让它工作了。

  1. 您必须具有一个附加菜单。

    参考:Custom Functions with add-ons?

  2. 您必须在清单中定义范围。并且范围必须作为您的项目的示例。

    参考:https://issuetracker.google.com/issues/36763437#comment22

    例如将此添加到您的appsscript.json文件:

    “ oauthScopes”:[     “ https://www.googleapis.com/auth/spreadsheets”   ]