如果你还玩不转Excel的条件计数,那么这个函数你必须得掌握
- 【深度解析】满足一定条件的计数——COUNTIF函数!
【深度解析】满足一定条件的计数——COUNTIF函数!
COUNTIF函数是对指定区域中符合指定条件的单元格计数的函数,在Excel 2003及以上版本中均可使用。
该函数的语法规则如下:
COUNTIF(range,criteria)
参数:
range要计算其中非空单元格数目的区域;
参数:
criteria以数字、表达式或文本形式定义的条件。
示例1:
如图3-9-22所示。
工资等于1200的人数,公式为=COUNTIF(C2:C8,1200)
示例2:
图3-9-23是原始数据。
COUNTIF的几种常见公式设置如图3-9-24所示。
为什么不重复的身份证号码计数视为重复
如图3-9-25所示,在B列使用下面的公式,判断A列的身份证号码是否重复。
=IF(COUNTIF($A$2:$A$10,A2)>1,"重复","")
公式中COUNTIF($A$2:$A$10,A2)部分,用来统计$A$2:$A$10数据区域中等于A2单元格的数量。再使用IF函数判断,如果$A$2:$A$10数据区域中,等于A2单元格的数量大于1,就返回指定的结果“重复”,否则返回空值。
可是当我们仔细检查时就会发现,A4和A5、A6、A7单元格的身份证号码不完全相同,但是公式结果判断为重复,这显然不对。
我们来看一下究竟是什么原因。
虽然A列中的身份证号码为文本型数值,但是COUNTIF函数在处理时,会将文本型数值识别为数值进行统计。
在Excel中超过15位的数值只能保留15位有效数字,后3位全部视为0处理,因此COUNTIF函数会将A4、A5、A6、A7单元格中的身份证号码都识别为相同。
用什么办法来解决这种误判的问题呢?
可将B2单元格公式修改为=IF(COUNTIF($A$2:$A$10,A2&"*")>1,"重复",""),如图3-9-26所示。
上面这个公式中,COUNTIF函数的第2个参数使用了通配符“*”,目的是使其强行识别为文本进行统计,最终得出正确结果。