Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 让CountIf忽略所有空白单元格(=空白单元格和包含“,”的单元格)_Excel_Excel Formula_Countif_Nonblank - Fatal编程技术网

Excel 让CountIf忽略所有空白单元格(=空白单元格和包含“,”的单元格)

Excel 让CountIf忽略所有空白单元格(=空白单元格和包含“,”的单元格),excel,excel-formula,countif,nonblank,Excel,Excel Formula,Countif,Nonblank,我想得到一个带有COUNTIFS的公式,比如 =COUNTIF(A1:A3,"<>"&"") =COUNTIF(A1:A3,“&”) 这样当A1=2、A2=“”、A3=空时,它返回1 注: A2包含一个空字符串,作为公式的结果A3是一个空白单元格,其中没有公式 发布的公式返回2 我试着用不同数量的双引号。我总是得到2分 我尝试使用&CHAR(34)&CHAR(34)。我得到2 发布的解决方案是我尝试的,它返回2(没有用) 公式实际上是=COUNTIFS(range1,co

我想得到一个带有COUNTIFS的公式,比如

=COUNTIF(A1:A3,"<>"&"")
=COUNTIF(A1:A3,“&”)
这样当
A1
=2、
A2
=“”、
A3
=空时,它返回1

注:

  • A2
    包含一个空字符串,作为公式的结果<代码>A3是一个空白单元格,其中没有公式
  • 发布的公式返回2
  • 我试着用不同数量的双引号。我总是得到2分
  • 我尝试使用
    &CHAR(34)&CHAR(34)
    。我得到2
  • 发布的解决方案是我尝试的,它返回2(没有用)
  • 公式实际上是
    =COUNTIFS(range1,cond1,range2,cond2)
    ,这就是为什么我不能使用
    =行(A1:A3)-COUNTIF(A1:A3,“”)
    =行(A1:A3)-COUNTBLANK(A1:A3)
    (请参阅)。
    range1
    range2
    将来自带有
    间接
    的表达式,但这可能并不相关
  • 我已经用
    =SUMPRODUCT(-expression1),-(ISNUMBER(A1:A3))
    解决了这个问题,但我特别询问使用
    COUNTIFS
    的可能性。在这一点上,数字与文本(例如)的区别并不相关
  • 空白空字符串是“麻烦”的来源(例如,请参阅)
  • Excel本身对于BLANK的定义有些模糊。在我的示例中,
    ISBLANK(A2)
    返回
    FALSE
    ,但
    COUNTBLANK(A2)
    返回
    1
  • 我对用户
    功能
    不感兴趣
  • 使用计算单元格内容数量的

    根据您的示例数据,A1有一个值,A2是由公式返回的零长度字符串,A3是真正的空字符串

    C2中的公式是

    =SUMPRODUCT(符号(LEN(A1:A3)))
    

    是否使用SUM而不是countif作为选项?如果是这样的话,我发现它在过滤数据集时更加灵活。例如:

    =总和(如果(不是(ISBLANK(A1:A3)),如果(不是(ISTEXT(A1:A3)),1,0))

    (作为数组公式输入)。如果(NOT(ISBLANK(x))…过滤掉非空白,那么如果(NOT(ISTEXT(x))…过滤掉非文本。过滤掉的任何内容都通过求和1来计算。您可以根据需要添加任意数量的过滤器。如果您只想过滤掉空字符串,但包括其他文本条目,则可以使用如下过滤器


    IF(ISTEXT(x),IF(LEN(x)>0,1,0),0)

    我遇到了这个确切的问题,我刚刚发现了“*”通配符,它搜索任何一个或多个字符,从而避免了空字符串问题——genius!请参阅Jonathan Gawrych的答案(贴在所选答案后面):


    不确定这是否适用于OP,因为A1中的值可能需要作为数字而不是字符串来处理,但它可能会帮助其他来到这里寻找文本解析解决方案的人。

    @pnuts-根据第6点,我会有两个(或更多)条件,所以我想我一定要使用
    COUNTIFS
    (除非可能是一组非常特殊的
    范围
    s和
    条件
    s).在我的示例中,我使用了
    COUNTIF
    来说明这一点。最好没有数组公式,但它们暂时可以。谢谢。记住一个不错的选项。但是请参见第7点。有什么想法吗?如何在多个条件下使用此公式?