python验证身份证号码大全_对身份证号码查重,你经常用的方法是错误,这个才是正确的方法...

对身份证号码查重你会用什么方法?相信很多人都会回答:利用条件格式,先对重复值填充颜色然后再筛选出来,其实使用这种方法它是不够精确的,如下图所示,2个身份证号码是不一样的,依然会被填充颜色认定重复,今天就跟大家分享下,身份证号码查重的正确方式

d17a4beb5a3953463404517bf1a371ce.png

一、正确方法

对身份证号码查重,正确的方法是利用countif函数,我们只需要将函数设置为:=COUNTIF(B:B,B2&“*”),然后点击回车向下填充即可,

31ffcde014499ea003004f11fe7cb576.png

如果结果大于1就代表有重复,结果等于1则表示没有重复,在这里结果都是1则表示身份证号码是没有重复的,而利用条件格式查找到重复值却认为第一个和最后一个是重复的,下面跟大家讲解下会出现这种情况的原因

二、原因讲解

这个还是与Excel的精度有关,Excel的精度只有15位,15位之后的数据都会被设置为0,

所以我们在Excel中录入身份证号码,只有将格式设置为文本之后再输入才能看到所有的数据

虽然身份证号码的格式是文本格式,我们利用条件格式来为重复值填色,本质上就是利用了公式,对于文本格式的单个数值公式会自动的将其转换为常规格式,这种的话15位之后的数据会被设置为0来显示。

所以只要身份证号码的前15位一样。条件格式就会认为这两个数据是一样的。就会为它们填充颜色

利用countif函数来查找重复,本质上就是让身份证号码保持文本格式,公式为:=COUNTIF(B:B,B2&“*”)

第一参数:B:B,这是一个数据区域不是单个数据,所以依旧会保持原有的文本格式

第二参数:B2&“*”,在这里我们将身份证号码连接上一个星号,星号是通配符它代表任意多个字符,也可以代表没有字符,在这里他的作用就是代表没有任何字符,利用连接符号将身份证与星号连接后,身份证号码就会保持文本格式代入公式中计算,这样的话才能找到正确的结果

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值