0

我正在尝试在 Google 电子表格中创建自定义方法。我有以下方法来替换缺少的 WEEKNUM 方法。(我留给第二个参数以允许上传 excel 文件。)

function WEEKNUM(inDate, dummy){
  return Utilities.formatDate(inDate, "GMT", "w");
}

我在一个电子表格中两次(800 次)在大约 400 行中调用方法。一些公式已完成,但对于其他公式,我收到此错误消息。

error: There are too many scripts running simultaneously for this Google user account.

我能做些什么来解决这个问题吗?我对 800 次执行非常了解,但并不比预期的内置函数更多。我知道有其他方法可以计算周数(例如=LEFT(TEXT(A2; "w d"); 2)),但是我想知道是否甚至可以创建不受此无形上限影响的自定义公式函数。

预先感谢您的回复。

4

2 回答 2

1

Have you custom function receive a range and output an array. No need to use an arrayformula, which also wont work on a custom function

于 2013-06-06T13:58:19.967 回答
0

您是否尝试过 ArrayFormula?在您的电子表格中,而不是 800 次调用:

=WEEKNUM(-cell-, -dummy-)

在单元格 A1 到 B400 中,尝试:

=ARRAYFORMULA(WEEKNUM(A1:B400, -dummy-))

在单元格 A1 中。

于 2013-04-04T23:13:41.110 回答