我希望得到一个COUNTIFS
的公式,比如
=COUNTIF(A1:A3,"<>"&"")
这样当A1
= 2,A2
=“”,A3
=空时,它会返回1.
注意:
A2
包含空字符串,作为公式的结果。 A3
是空白单元格,其中没有公式。&CHAR(34)&CHAR(34)
。我得到2。=COUNTIFS(range1,cond1,range2,cond2)
,这就是为什么我不能使用类似的东西
=ROWS(A1:A3)-COUNTIF(A1:A3,"")
或=ROWS(A1:A3)-COUNTBLANK(A1:A3)
(请参阅this)。
range1
和range2
来自INDIRECT
的表达式,但这可能不相关。=SUMPRODUCT(--(expression1),--(ISNUMBER(A1:A3)))
进行了解决,但我特别询问使用COUNTIFS
的可能性。目前,对数字与文本(例如)的歧视并不相关。ISBLANK(A2)
返回FALSE
,但COUNTBLANK(A2)
返回1
。Function
不感兴趣。答案 0 :(得分:3)
使用SUMPRODUCT function计算单元格内容SIGN function的LEN function。
根据您的样本数据,A1有一个值,A2是公式返回的零长度字符串,A3真的是空白。
C2中的公式是,
=SUMPRODUCT(SIGN(LEN(A1:A3)))
答案 1 :(得分:0)
使用SUM而不是COUNTIFS是一个选项吗?如果是这样,我发现它可以更灵活地过滤数据集。例如:
= SUM(IF(NOT(ISBLANK(A1:A3)),IF(NOT(ISTEXT(A1:A3)),1,0),0))
(作为数组公式输入)。 IF(NOT(ISBLANK(x))...过滤掉非空白,然后IF(NOT(ISTEXT(x))...过滤掉非文本。无论生存的是什么,过滤器都是通过求和计算的。你可以添加尽可能多的过滤器。如果您只想过滤掉空字符串但包含其他文本条目,可以使用像
这样的过滤器如果(ISTEXT(X),IF(LEN(X)&GT; 0,1,0),0)
答案 2 :(得分:0)
我遇到了这个确切的问题,我才发现有关“?*”通配符的信息,该通配符搜索任何一个或多个字符,从而避免了空字符串问题-天才!在此处查看Jonathan Gawrych的答案(在选定答案后发布):
Excel Countif Not equal to string length of zero
不确定这是否适用于OP,因为看起来A1中的值可能需要以数字而不是字符串的形式进行处理,但这可能会帮助到达此处的任何其他人寻求文本解析解决方案。 / p>