我有多个电子表格是从1个模板复制的。每个电子表格的工作原理与从1个获得公式的模板中复制的结果完全相同。
反正有没有激活并运行所有电子表格的记录宏?
我通常只复制记录的宏的脚本(如果某些公式发生更改),然后一一遍到所有60个电子表格以粘贴/激活该脚本,以便它可以采用新的公式更改。这样,它可以使所有电子表格保持一致。
有什么方法可以激活模板中所做的更改,该更改已记录到所有其他电子表格中?
答案 0 :(得分:1)
反正有没有激活并运行所有电子表格的记录宏?
严格地说,运行Google Sheets宏的唯一方法是通过Google Sheets UI,但是宏代码的运行方式可以与任何其他Google Apps脚本代码相同。
为了使答案简短而有用,请不要运行每个电子表格中保存的功能,而要使用“主” Google Apps Script项目。
从广义上讲,这个“主项目”:
有很多方法可以获取电子表格的列表。您可以使用搜索方法,获取文件夹中的电子表格,以及其他选择。
要执行循环,最常见的方法是使用for
循环语句,但是您可以使用其他语句和Array方法,例如Array.prototype.forEach
库有助于避免在多个位置上具有相同代码的副本,但是您仍然必须创建Google Apps脚本项目并将库添加为资源。
一个更好的选择是创建一个G Suite编辑器附加组件,因为它们安装一次,并且在所有电子表格(或文档,表单,幻灯片)上都可供安装该附加组件的用户和以下用户使用:使用附件的电子表格。
备注
通常,使用宏记录器创建的宏非常慢,因为在记录过程中每次单击图纸和范围时,它们通常都包含一个“激活”,以及包含activeSpreadsheet()
,activeSheet()
应该更换。
答案 1 :(得分:0)
“手动”(和丑陋)的方式是每次在新电子表格中复制和粘贴脚本。与常规脚本不同,还需要复制并粘贴清单文件(在Google脚本窗口->视图->显示清单文件中)。清单是保留分配的键盘快捷键。