过去几个月来,我一直在google文档电子表格中使用以下公式。大约4周前,它停止工作了。我不知道为什么-尚未找到任何说明公式的工作方式已发生变化的信息,并且尚未进行更改或更改我的数据。
我得到的错误是:
“错误:参数为空,不是很有帮助。
这里是公式:
=arrayformula(
sum(
(Sheet1!$B$2:$B$100458=$A3)
*
(arrayformula(
month(Sheet1!$A$2:$A$100458)
)
= month(C$1)
)
*
(arrayformula(
year(Sheet1!$A$2:$A$100458)
)
=year(C$1)
)
)
)
它在第一列中具有唯一的ID,在第一行中具有日期(每月的1号)。然后,它通过工作表1,查找在月份和年份中有多少记录与该ID匹配,并返回计数。一段时间以来一切正常,不知道发生了什么。我什至尝试回到修订历史记录,但没有发现任何差异。
不确定它为什么以前能起作用,但是在完成每个步骤之后,这就是我要做的,才能使其起作用。
=arrayformula(
sum(
iferror(
arrayformula(Sheet1!$B$2:$B$100458=$A3)
, FALSE
)
*
iferror(
arrayformula(
month(Sheet1!$A$2:$A$100458)
= month(C$1)
)
,FALSE
)
*
iferror(
arrayformula(
year(Sheet1!$A$2:$A$100458)
=year(C$1)
)
,FALSE
)
)
)
基本上重新排列一些arrayformula的顺序,并添加iferror()函数。似乎数组公式在通过记录末尾时会抛出错误而不是错误,因此sum也会抛出错误。 Iferror()解决了该问题。