为什么不重复的身份证号码计数结果为重复?

如图1,在B列使用下面的公式,判断A列的身份证号码是否重复。

=IF(COUNTIF($A$2:$A$10,A2)>1,"重复","")

图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,"重复",""),

图2

上面这个公式中,COUNTIF函数的第2参数使用了通配符"*",目的是使其强行识别为文本进行统计, 最终得出正确结果。

(0)

相关推荐