0

我真的很好奇,但有谁知道为什么你不能使用 setValue 在自定义函数的不同单元格中写入?

自述文件解释说你不能这样做,但没有给出原因: link

自定义函数返回值,但它们不能在它们所在的单元格之外设置值。在大多数情况下,单元格 A1 中的自定义函数无法修改单元格 A5。但是,如果自定义函数返回双精度数组,则结果会溢出包含该函数的单元格并填充包含自定义函数的单元格下方和右侧的单元格。您可以使用包含 return [[1,2],[3,4]]; 的自定义函数对此进行测试。

任何人都知道这是否有充分的理由?

4

1 回答 1

2

我认为这是非常合乎逻辑的。当您在单元格中调用自定义函数时,例如 A1,您期望该函数进行计算(或其他)并将结果放入 A1。如果您想在 B1 中查看结果,您可以在 B1 中编写相同的公式。

正如文档解释的那样,在某些情况下,您可能希望函数返回多个值,在这种情况下,返回 2D 数组将填充与调用公式的单元格相邻的单元格。

无论如何,您能否给出您想要使用自定义函数填充不同单元格的用例。您始终可以以其他方式(而不是公式)调用脚本并让它修改您想要的任何单元格。

于 2013-09-25T04:39:17.580 回答