身份证号码校验原理,EXCEL校验身份证方法,简道云校验身份证方法
作者:随然 日期:2019-06-23
身份证校验码的计算方法
1、将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。
2、将这17位数字和系数相乘的结果相加。
3、用加出来和除以11,看余数是多少。
4、余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字。其分别对应的最后一位身份证的号码为1-0-X -9-8-7-6-5-4-3-2。
5、通过上面得知如果余数是3,就会在身份证的第18位数字上出现的是9。如果对应的数字是10,身份证的最后一位号码就是罗马数字x。
例如:某男性的身份证号码为【53010219200508011x】, 我们看看这个身份证是不是合法的身份证。
首先我们得出前17位的乘积和【(5*7)+(3*9)+(0*10)+(1*5)+(0*8)+(2*4)+(1*2)+(9*1)+(2*6)+(0*3)+(0*7)+(5*9)+(0*10)+(8*5)+(0*8)+(1*4)+(1*2)】是189,然后用189除以11得出的结果是189/11=17----2,也就是说其余数是2。最后通过对应规则就可以知道余数2对应的检验码是X。所以,可以判定这是一个正确的身份证号码。
EXCEL校验方法
校验身份证号码是否正确
方法1
=IF(LEN(A2)=18,RIGHT(A2,1)=MID("10X98765432",1+MOD(SUMPRODUCT(MID(LEFT(A2,17),ROW($1:$17),1)*MOD(2^(18-ROW($1:$17)),11)),11),1),FALSE)
方法2
=IF(MID("10X98765432",MOD(SUMPRODUCT(MID(A2,ROW($1:$17),1)*2^(18-ROW($1:$17))),11)+1,1)=RIGHT(A2,1),"正确","错误")
计算出最后一位正确的校验码
=MID("10X98765432",MOD(SUMPRODUCT(MID(A2,ROW($1:$17),1)*2^(18-ROW($1:$17))),11)+1,1)
简道云公式
IF(UPPER(RIGHT(学生身份证号码,1))==MID("10X98765432",1+MOD(SUMPRODUCT([7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2],[MID(学生身份证号码,1,1),MID(学生身份证号码,2,1),MID(学生身份证号码,3,1),MID(学生身份证号码,4,1),MID(学生身份证号码,5,1),MID(学生身份证号码,6,1),MID(学生身份证号码,7,1),MID(学生身份证号码,8,1),MID(学生身份证号码,9,1),MID(学生身份证号码,10,1),MID(学生身份证号码,11,1),MID(学生身份证号码,12,1),MID(学生身份证号码,13,1),MID(学生身份证号码,14,1),MID(学生身份证号码,15,1),MID(学生身份证号码,16,1),MID(学生身份证号码,17,1)]),11),1),"正确","身份证号码错误")
[本日志由 随然 于 2019-06-23 08:20 PM 更新]
上一篇: Excel表格中身份证号码批量添加小三角形图标的技术处理心得体会下一篇: Excel表格中用身份证号码获取性别和年龄、生日的方法
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: 身份证号码
相关日志:
评论: 0 | 引用: 0 | 查看次数: 16504
发表评论