我有几张功能绑定到电子表格的工作表。每个电子表格都有自己的功能,并使用SpreadsheetApp.getUi来运行html服务。我想在主电子表格项目的所有工作表中启动函数调用?可能吗?比如获取电子表格项目的句柄并在该项目中运行脚本?
答案 0 :(得分:4)
您有两种选择:
各有利弊。也不是关于可维护性的。
库选项将提供代码完成,而Web应用程序选项将启用(如果您愿意)您以异步方式运行代码。
两者都有不同的速度惩罚。启用库的脚本速度较慢,如文档中所述。由于urlfetch
延迟,网络应用会变慢。
库函数将使用主机脚本中允许的运行时,而Web应用程序将扩展运行时和一些配额。
文档:
答案 1 :(得分:0)
在我看来,使用库是保护代码的最快,最简单的方法。 为此,您需要:
1个电子表格或任何包含代码的Google文档-SCRIPT A
您作为库发布的1个独立脚本SCRIPT B。
在SCRIPT A的编辑器中-Safe Args 您添加库密钥
在SCRIPT A代码中,您可以调用SCRIPT B的功能
function callFunctionOfScriptB(){ LibraryIdentifier.functionNameinScriptB() }
当您在弹出窗口的“标识符”列中单击“资源+库”时,您会找到LibraryIdentifier