如何提高 google 文档应用程序脚本的速度

How to increase speed of google docs apps scripts

我有一个 google 应用程序脚本,可以从电子表格中获取数据。数据获取速度很慢,我认为是因为数据量大。此函数的第一次调用需要一秒钟:

sheet.getRange(row, coll).getValue()

我认为必须创建全局变量,这些变量在电子表格打开时始终可用。我会将整个电子表格存储在打开状态并访问它,这应该会快得多。但是我找不到这个选项。

您可以使用:sheet.getDataRange().getValues(); 它将生成一个二维数组,其中包含 sheet 中的所有值,直到包含数据的最后一行和最后一列。

例如,如果您有一个 sheet,单元格 A1:B10 中有数据,然后单元格 E20 中有数据,.getDataRange() 方法将获得范围 A1:E20,包括空细胞.

然后您可以使用循环或过滤器来访问或修改数组。

在没有更多信息或不知道你到底想达到什么目的的情况下,这是我能给你的最好方法。

注意:存储整个传播sheet onOpen() 不是一个好主意,因为对传播sheet 的任何更改都不会被拾取,除非您刷新或重新打开传播sheet.