在Excel官方说明中,有关COUNT一系列的函数总共有5个。因为简单实用,所以在日常工作中,我们经常会用到。
大多时候用起来都很顺手,但偶尔会在细枝末节之处,遇到些小麻烦,无从解决。
比如这位来自网友的困扰:
EXCEL中COUNTIF总是算出空白单元格加上不是零的个数,怎样才能算出一列不为零的个数?
网友的计算公式为:COUNTIF(C3:C9,"<>0")=5
但是根据肉眼观察,公式结果是错误的,因为只有4类赠品数量大于零,结果应该为4。
是用错公式了吗?
并没有。
错误不在于公式的用法,而在于COUNTIF在进行条件筛选时,并没有将单元格C6的空值,作为0值进行判断。如果将单元格C6中的空值,改为0值,那么结果就是4。
为什么COUNTIF无法将空值识别为0?
在系统中,空值表示什么也没有,没有文本、没有数字、没有标点、没有公式,等等。
而0值,虽然通常理解为什么也没有,但确实是一个数字,因这一点就可以将其区分开了。
就像两张白纸,一张什么也不写即是空,另一张写数字0即非空。
回归到案例中,如果不改变数据表的内容,怎样才能得出正确结果?
两个思路:
1. 求出全部不为0的个数,减掉空值的个数
2. 求出全部非空值的个数,减掉0值的个数
下面就两个思路分别说明:
- 思路一:求出全部不为0的个数,减掉空值的个数用C列黄色格子数量减掉绿色格子数量即所得。
根据案例中网友的公式,已经实现了第一步,求出全部不为0的个数。
那么如何求出空值的个数?
这里要引入一个函数COUNTBLANK()
根据EXCEL官方函数说明,COUNTBALNK不但可以统计空单元格个数,也可以统计空文本。
那么与COUNTIF组合的公式为:
COUNTIF(C3:C9,"<>0")-COUNTBLANK(C3:C9)=4
- 思路二:求出全部非空值的个数,减掉0值的个数
用黄色单元格个数减掉绿色单元格个数。
观察到黄色单元格等于该列除了空值以外的所有单元格个数。由于案例中涉及计算的数据为数字,根据EXCEL官方函数说明,使用函数COUNT或COUNTA均可进行统计。
表哥Tips:
如果案例中不但包含数字,还包括文本、公式等等数据形式,则只可使用COUNT进行统计。
接着,使用COUNTIF统计绿色单元格的数量。网友公式使用COUNTIF统计非0个数,则改为相反的条件即可。
组合公式为:
COUNTA(C3:C9)-COUNTIF(C3:C9,0)=4
以上,我们借助一个案例,讲解了全部与COUNT有关的函数。
若今后使用时,遇到了难题,只要回顾上面的案例,就可以迎刃而解了。
如果你用EXCEL遇到了问题,
欢迎留言给表哥,
也许下一篇就是为你定制的专题哦!
就到这里吧↖(^ω^)↗撒花