我有一个主电子表格和一些副本。此主电子表格使用了一些脚本。
是否可以将此主电子表格的所有副本链接到与主电子表格中相同的脚本?
目标:
答案 0 :(得分:17)
amleczko是对的:您应该在Google Apps脚本中使用新的库功能。
但是,截至今天,您将无法完全按照自己的意愿行事(对多个电子表格使用相同的脚本)。您可以执行的操作是保存脚本版本(文件>管理版本...),以便创建库。然后,在其他电子表格中导入此库(资源>管理库...)。打开“开发模式”,以便库中的每个更改都会立即在使用此库的电子表格中生效。否则,您必须为每次更改保存新版本的库,并使用它手动更新每个电子表格中库的版本号。
问题是,您需要使用您的库在每个电子表格中编写脚本,并使用以下骨架函数:
function doSomething(){
myLibrary.doSomething();
}
答案 1 :(得分:1)
以这种方式你不可能正在思考。至少,还没有(见issue 40)。
但是,根据您的脚本用法,您可以“艰难地”连接它们,甚至更好,只使用一个脚本。主电子表格上的脚本可以打开其他电子表格文件并“远程”执行其工作。不需要将脚本托管在电子表格上与之交互(在其上进行读/写)。如果您打算使用电子表格事件触发器,即on-open,on-edit和on-form-submit,您只需要在电子表格上托管脚本。
也许您可以在主表上为脚本开发一个漂亮的UI并将其作为服务发布。然后,只有副本上的链接才能访问其他浏览器选项卡上的相同UI。将参数添加到链接脚本UI甚至可以适应“触发”它的特定电子表格。
嗯,这就是我现在想象的一切。但是,不幸的是,有一些用例不适合这个很好的“解决方法”。对于那些人,人们只能出演issue 40(进行投票并跟踪更新),并希望很快就能开发出来。
答案 2 :(得分:1)
我认为这已经改变了。根据{{3}}从2012年5月22日开始,存在这种可能性。请检查:
答案 3 :(得分:0)
我在此上下文中设置的解决方案是拥有一个嵌入了主脚本的Google网站,以及嵌入电子表格的位置
然后,该脚本会引用专用电子表格,查找Google网站页面的名称,在主电子表格中查找并获取嵌入在页面中的电子表格的ID。
答案 4 :(得分:0)
使用自动生成电子表格的脚本时,我解决了这个问题。
通常,我会使用名为“Info”的脚本向任何电子表格添加工作表。我将使用它来存储对脚本很重要的信息。在我自动生成更多电子表格的脚本中,我会跟踪创建的工作表的ID。这样,我就可以快速调出所有“链接”表,并使用相同的脚本与它们进行交互。甚至值得在一张纸上写下这个剧本,并将它与你的主表或它的孩子完全分开。
看看这个功能,它可能会给你一些想法。
答案 5 :(得分:0)
最好的方法是作为插件发布,然后安装插件,它将出现在您打开的每个电子表格中。并且你可以发布为私人,只能由你自己看到。