在使用 FILTER 函数时,我注意到当将同一个数组传递给两个参数(“数组”和“包含”)时,该函数会过滤掉任何零值。
这是因为 Excel 中零被视为 Falsey 吗?我尝试谷歌搜索,但找不到明确的答案,并=0=FALSE
返回 False,而且我在任何地方都看不到此零过滤功能的引用FILTER 函数文档。
以下是我看到的结果=FILTER(A2:A7, A2:A7)
:
A | 乙 | |
---|---|---|
1 | A 列 | 已过滤 A 列 |
2 | -22 | -22 |
3 | 10 | 10 |
4 | 二十五 | 二十五 |
5 | -5 | -5 |
6 | 0 | 17 |
7 | 17 |
最后,有什么办法可以抑制这种情况吗?我正在尝试使用 FILTER 从数组中删除 N/A 值,=FILTER(A2:A8,IFERROR(A2:A8,FALSE))
但我想保留零值。
答案1
在 Excel 中公式FALSE
= 0
。
您可以通过以下公式看到这一点:
=--FALSE
如果你看一下文档:https://support.microsoft.com/en-us/office/filter-function-f4f7cb66-82eb-4767-8f7c-4877ad80c759
多条件示例使用:(C5:C20=H1)*(A5:A20=H2)
将分别*
导致 TRUE/FALSE 变为,因此它将返回s 和s1/0
的数组。1
0
所以是的,在执行时:列表中的=FILTER(A2:A7, A2:A7)
任何内容都将被假定为0
FALSE
现在你想要的公式,而不是IFERROR
使用NOT(ISERROR())
=FILTER(A2:A8,NOT(ISERROR(A2:A8)))