我有一个奇怪的结果,我无法解释。 电子表格看起来像这样(我简化了数据,因为它是较大工作表的一部分):
A | B
-----+---
1 X | Y
2 |
3 |
4 1 |
5 1 |
6 1 |
7 1 |
8 1 |
9 1 |
10 1 |
11 1 |
12 1 |
13 1 |
14 |
...and so empty rows till the end of the sheet.
单元格B2包含公式:
=COUNTIF(filter(B4:B;$A4:$A = B4:B);"<>0")
细胞B3含有配方:
=COUNTIF(filter(B4:B13;$A4:$A13 = B4:B13);"<>0")
我期望在0
和B2
单元格中获得B3
。而不是我在0
和B2
1
中收到B3
。
公式假设计算列(B2
)或列的一部分(B3
)中相同的非空值的数量。
你有什么想法吗?
答案 0 :(得分:1)
出于同样的原因,这给出了1:
=countif(na(),"<>0")
B3中的过滤器没有结果,因此您得到了#N; A&#34;。当你把它喂给COUNTIF时,你得到1。
B2中的过滤器确实给出了一些结果(因为它对于列A和B中的所有空白单元都成功)。但结果都是空白,所以你得到0的数。
答案 1 :(得分:0)
我采用的类似方法是this one。
基本上,它使用以下公式:
=ArrayFormula({"Count [Erik]";IF(B2:B="","",IFERROR(VLOOKUP(B2:B&"",QUERY({MyTable!B2:B&"",MyTable!C2:C},"Select Col1, COUNT(Col2) Where Col1 Is Not Null And Col2 = 'CriteriaA' Group By Col1"),2,FALSE)))})
(归功于Erik Tyler)