身份证的含义及构成和校验方法
1、公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。地址码(前六位数) 表示编码对象常住户口所在县(市、旗、区)的行政区划代码,按GB/T2260的规定执行;出生日期码(第七位至十四位) 表示编码对象出生的年、月、日,按GB/T7408的规定执行,年、月、日代码之间不用分隔符;顺序码(第十五位至十七位) 表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性;校验码(第十八位数) 作为尾号的校验码,是由号码编制单位按统一的公式计算出来的。

3、将身份证号码前17位数分别乘以不同的系数求和(介绍两种简单的求和方法),个人可以根据自己的需要进行选择:1、=MID(F11,1,1)*7+MID(F11,2,1)*9+MID(F11,3,1)*10+MID(F11,4,1)*5+MID(F11,5,1)*8+MID(F11,6,1)*4+MID(F11,7,1)*2+MID(F11,8,1)*1+MID(F11,9,1)*6+MID(F11,10,1)*3+MID(F11,11,1)*7+MID(F11,12,1)*9+MID(F11,13,1)*10+MID(F11,14,1)*5+MID(F11,15,1)*8+MID(F11,16,1)*4+MID(F11,17,1)*22、=SUM(MID(F11,1,1)*7,MID(F11,2,1)*9,MID(F11,3,1)*10,MID(F11,4,1)*5,MID(F11,5,1)*8,MID(F11,6,1)*4,MID(F11,7,1)*2,MID(F11,8,1)*1,MID(F11,9,1)*6,MID(F11,10,1)*3,MID(F11,11,1)*7,MID(F11,12,1)*9,MID(F11,13,1)*10,MID(F11,14,1)*5,MID(F11,15,1)*8,MID(F11,16,1)*4,MID(F11,17,1)*2)

5、将所得的余数与相应的对应码对应起来。其分别对应的最后一位身份证的号码为1-0-X -9-8-7-6-5-4-3-2。比如:余数为0,其最后一位对应码为1;余数为1,其最后一位对应码为0等。输入公式:=IF(MOD(G11,11)=0,1,IF(MOD(G11,11)=1,0,IF(MOD(G11,11)=2,"x",IF(MOD(G11,11)=3,9,IF(MOD(G11,11)=4,8,IF(MOD(G11,11)=5,7,IF(MOD(G11,11)=6,6,)))))))&IF(MOD(G11,11)=7,5,IF(MOD(G11,11)=8,4,IF(MOD(G11,11)=9,3,IF(MOD(G11,11)=10,2,""))))这是if函数和mod函数的组合函数使用方法。“&”是连接符号,因为if函数只能连用7次,而判断身份证取余后共有11位,为此,必须将7个以上的if函数用“&”连起来。

7、这里在给他大家介绍另一种组合验证身份证的函数。=IF(LEN(F11)=18,IF(RIGHT(F11,1)="X",IF(CHOOSE(MOD(SUM(LEFT(RIGHT(F11,18))*7+LEFT(RIGHT(F11,17))*9+LEFT(RIGHT(F11,16))*10+LEFT(RIGHT(F11,15))*5+LEFT(RIGHT(F11,14))*8+LEFT(RIGHT(F11,13))*4+LEFT(RIGHT(F11,12))*2+LEFT(RIGHT(F11,11))*1+LEFT(RIGHT(F11,10))*6+LEFT(RIGHT(F11,9))*3+LEFT(RIGHT(F11,8))*7+LEFT(RIGHT(F11,7))*9+LEFT(RIGHT(F11,6))*10+LEFT(RIGHT(F11,5))*5+LEFT(RIGHT(F11,4))*8+LEFT(RIGHT(F11,3))*4+LEFT(RIGHT(F11,2))*2),11)+1,1,0,"X",9,8,7,6,5,4,3,2)=LEFT(RIGHT(F11,1)),"身份证校验正确","身份证校验错误!"),IF(CHOOSE(MOD(SUM(LEFT(RIGHT(F11,18))*7+LEFT(RIGHT(F11,17))*9+LEFT(RIGHT(F11,16))*10+LEFT(RIGHT(F11,15))*5+LEFT(RIGHT(F11,14))*8+LEFT(RIGHT(F11,13))*4+LEFT(RIGHT(F11,12))*2+LEFT(RIGHT(F11,11))*1+LEFT(RIGHT(F11,10))*6+LEFT(RIGHT(F11,9))*3+LEFT(RIGHT(F11,8))*7+LEFT(RIGHT(F11,7))*9+LEFT(RIGHT(F11,6))*10+LEFT(RIGHT(F11,5))*5+LEFT(RIGHT(F11,4))*8+LEFT(RIGHT(F11,3))*4+LEFT(RIGHT(F11,2))*2),11)+1,1,0,"X",9,8,7,6,5,4,3,2)=LEFT(RIGHT(F11,1))*1,"身份证校验正确","身份证校验有误")),IF(LEN(F11)=15,"老号,请注意",IF(LEN(F11)=0,"缺号码","位数不对")))
