首页  >  文章  >  专题  >  excel如何自动校正身份证对错

excel如何自动校正身份证对错

醉折花枝作酒筹
醉折花枝作酒筹原创
2021-05-10 16:53:2425343浏览

方式:首先单元格中输入“=IF(LEN(数据)=18,MID('10X98765432',MOD(SUMPRODUCT(VALUE(MID(数据,ROW(数据区域),1)),数据区域),11)+1,1),'长度错误')”;然后进行对比即可。

excel如何自动校正身份证对错

本教程操作环境:windows7系统、Microsoft Office Excel2013版、Dell G3电脑。

先看一下原理,二代身份证共18位,那么最后一位是由前面的18位通算术来计算出来的,如果某一位出错,那么校验结果就会不一致,引此来判断这个身份证号是不是正确合法

再看一下算法,先将身份证前面的17位数分别乘以不同的系数,如图所示

K5RX$@3Q(RSVW6H]~U2N([D.jpg

把这个17位数字和系数相乘后所得的结果相加,得到一个总和数,再除以11得到余数,那么余数与校验码(身份证是的最后一位)相对应的关系如图所示,即如果余数为3,校验码为9。

7DDUZ_O4B5[B((1E(QOTHUB.png

验证原理理清后,看一下在excel上怎样操作,新建一个表格,简单做一个表格,便于观看

LH5SC`6L_W][D$S(C~J`VH8.png

为了更好理解,先算18位,=IF(LEN($C2)=18,MID('10X98765432',MOD(SUMPRODUCT(VALUE(MID($C2,ROW($1:$17),1)),$B$2:$B$18),11)+1,1),'长度错误')

TOZ(6KX6K@56)I%N0S3%J(9.png

再验证这个第18位与身份证的第18位是不一致合法有效=IF(LEN($C2)=18,IF(MID('10X98765432',MOD(SUMPRODUCT(VALUE(MID($C2,ROW($1:$17),1)),$B$2:$B$18),11)+1,1)=RIGHT($C2,1),'合法','不合法'),'长度错误')

9}L2QY~O$E_N(VD_RH%(GL3.png

相关学习推荐:excel教程

以上是excel如何自动校正身份证对错的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn