身份证号等超长数字查重避免假重复的方法
作者:小窝来源:部落窝教育发布时间:2023-09-29 15:50:06点击:915
超过15的数字查重用日常方法可能会出现假重复。今天告诉大家3种方法解决超长数字,如身份证号、银行卡号的查重。
小窝日常查重常用两个方法:条件格式中的“重复值”、COUNTIF函数计数。操作快捷、简便。
不知你是否也常用这两种方法查重?
但是下方的数据,用条件格式查重,得到的结果(粉色显示的)半真半假,颇具欺骗性:
用公式=COUNTIF(A$2:A$12,A$2:A$12)得到的也是半真半假。
为什么出现这种错误?
根本原因就在昨日文章提到的“Excel 在数字中仅存储 15 个有效位数”。所有数字,在15位后的,Excle都把它用0取代。譬如数字“123456789012345678”和“123456789012345899”在输入后就变成123456789012345000,成了一样的。
虽然当前的身份证号、银行卡号采用文本格式输入了18、19位数字,但当用条件格式查重,以及用COUNTIF统计个数时,文本数字被Excel视为数字进行处理,因此数字最后的3位或4位都当作了0来看待。
对于大于15位的超长数字查重、个数统计,需要调整以上方法。
COUNTIF法调整:
将条件添加上通配符“*”,让文本数字保持文本属性。
高版本:
=COUNTIF(A2:A11,A2:A11&"*")
低版本:
=COUNTIF($A$2:$A$11,A2&"*")向下填充
注:该公式有一个小缺陷,要求数据的位数统一。如果位数不统一,也可能出错。譬如当用“123456&"*"”做条件时,公式会把“123456”、“1234567”、“12345678”等当作相同的进行统计。
条件格式查重调整:
添加一个辅助列,辅助列内容是身份证号+文字,然后选中辅助列进行查重。操作如下图:
最后小窝再送大家一个宝贝公式,不管数字位数长短,是否统一,不添加任何符号都能正确查重:
=SUMPRODUCT(($A$2:$A$11=A2)*1)
本文配套的练习课件请加入QQ群:902294808下载。
做Excel高手,快速提升工作效率,部落窝教育Excel精品好课任你选择!
扫下方二维码关注公众号,可随时随地学习Excel:
相关推荐:
版权申明:
本文作者小窝;部落窝教育享有稿件专有使用权。若需转载请联系部落窝教育。