如何让countifs
选择所有非空白单元格?
我还有另外两个标准,因此单独使用counta
不是一种选择。
使用istext
会使结果始终为0。
使用<>""
作为标准时,Excel会出错。
答案 0 :(得分:104)
使用"<>"
标准。它将计算任何非空单元格,包括#NAME?
或#DIV/0!
。至于它为何起作用,如果我知道该死,但Excel似乎理解它。
注意:也适用于
Google Spreadsheet
答案 1 :(得分:19)
如果多个标准使用countifs
=countifs(A1:A10,">""",B1:B10,">""")
" >"" "
看着大于空。此公式查找两个条件,并且同一行中的列都不能为空以供计数。如果仅计算一列,则使用一个标准执行此操作(即使用B1:B10
之前的所有内容,不包括逗号)
答案 2 :(得分:8)
在Excel 2010中,您具有countifS功能。
如果我试图计算范围内具有非0值的单元格数量,那么我遇到了问题。
e.g。如果您的工作表在A1:A10范围内具有值1,0,2,3,0并且您想要答案3。
正常函数= COUNTIF(A1:A10,“&lt;&gt; 0”)会给你8,因为它将空白单元格计为0。
我的解决方案是使用具有相同范围但多个标准的COUNTIFS函数,例如
<强> = COUNTIFS(A1:A10, “&LT;大于0”,A1:A10, “&LT;&gt;” 中)强>
这有效地检查范围是否为非且非空白。
答案 3 :(得分:6)
如果您使用多个条件,并且想要计算特定列中非空单元格的数量,您可能希望查看DCOUNTA。
e.g
A B C D E F G
1 Dog Cat Cow Dog Cat
2 x 1 x 1
3 x 2
4 x 1 nb Result:
5 x 2 nb 1
E5中的公式: = DCOUNTA(A1:C5, “牛”,E1:F2)
答案 4 :(得分:3)
你可以试试这个:
=COUNTIF(Data!A2:A300,"<>"&"")
答案 5 :(得分:3)
我发现最好的方法是使用SUMPRODUCT
代替:
=SUMPRODUCT((A1:A10<>"")*1)
如果你想提出更多标准,这也很棒:
=SUMPRODUCT((A1:A10<>"")*(A1:A10>$B$1)*(A1:A10<=$B$2))
答案 6 :(得分:0)
我发现的最好方法是使用“IF”和“ISERROR”组合声明:
=IF(ISERROR(COUNTIF(E5:E356,1)),"---",COUNTIF(E5:E356,1)
如果存在错误(如果单元格中没有数据要计算/平均/等),或者计数(如果有数据),此公式将用三个破折号(---)填充单元格在细胞中)
关于这个逻辑查询的好处是它将通过使它们的文本值为“---”来排除完全空白的行/列,所以如果你有一个行计数(或平均),然后计算(或平均值)在公式中的另一个位置,第二个公式不会响应错误,因为它会忽略“---”单元格。