You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

当FILTER()函数返回0时,如何正确统计其行数?

Excel函数问题解决方案

方法1:修改FILTER默认返回值为空白数组

将FILTER的第三个参数从0替换为空白数组{},再通过IFERROR捕获错误并返回0,公式如下:

=IFERROR(ROWS(FILTER(Table,Table[Col.A]="d",{})),0)

当没有匹配结果时,FILTER返回空白数组,ROWS({})会触发#CALC!错误,IFERROR将其转换为0;存在匹配结果时,FILTER返回对应行的数组,ROWS可正常统计行数。

方法2:使用COUNTIF直接统计(更简洁)

若需求仅为统计Col.A中等于"d"的行数,无需嵌套FILTER和ROWS,直接用COUNTIF即可:

=COUNTIF(Table[Col.A],"d")

该公式逻辑直观,无匹配结果时自动返回0。

方法3:通过ISNUMBER判断返回值类型

如果保留原FILTER的默认值0,可通过判断返回值是否为单个数值来输出结果:

=IF(ISNUMBER(FILTER(Table,Table[Col.A]="d",0)),0,ROWS(FILTER(Table,Table[Col.A]="d",0)))

无匹配时FILTER返回单个数字0,ISNUMBER判定为TRUE,返回0;有匹配时FILTER返回多行数组,ISNUMBER判定为FALSE,返回ROWS统计的行数。

内容的提问来源于stack exchange,提问作者Vito G.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 07:55:33