我想用COUNTIFS
得到一个公式,比如
=COUNTIF(A1:A3,"<>"&"")
这样当A1
= 2,A2
= "",A3
= empty时,它返回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
的可能性。数字与文本的区别(例如)在此point.ISBLANK(A2)
返回FALSE
,但COUNTBLANK(A2)
返回am对用户Function
.不感兴趣
发布于 2015-03-27 13:29:24
使用对单元格内容的SUMPRODUCT function的SIGN function进行计数的LEN function。
根据您的示例数据,A1有一个值,A2是由公式返回的零长度字符串,而A3则真正为空。
C2中的公式是,
=SUMPRODUCT(SIGN(LEN(A1:A3)))
发布于 2019-06-25 03:03:51
我遇到了这个问题,我刚刚发现了"?*“通配符,它可以搜索任何一个或多个字符,从而避免了空字符串问题--天才!查看Jonathan Gawrych的答案(紧跟在所选答案之后):
Excel Countif Not equal to string length of zero
不确定这是否适用于OP,因为看起来A1中的值可能需要作为数字而不是字符串来处理,但它可能会对其他来到这里寻找文本解析解决方案的人有所帮助。
发布于 2015-06-23 11:30:09
使用SUM而不是COUNTIFS是一种选择吗?如果是这样,我发现它在过滤数据集方面要灵活得多。例如:
=SUM(IF(NOT(ISBLANK(A1:A3)),IF(NOT(ISTEXT(A1:A3)),1,0),0)
(作为数组公式输入)。IF(NOT(ISBLANK(X)...过滤掉非空格,然后IF(NOT(ISTEXT(x))...过滤掉非文本。任何在过滤器中幸存下来的都会通过加1来计数。你可以根据需要添加任意多的过滤器。如果只想过滤掉空字符串而包括其他文本条目,那么可以使用类似这样的过滤器
IF(ISTEXT(x),IF(LEN(x)>0,1,0),0)
https://stackoverflow.com/questions/29291888
复制相似问题