身份证最后一位自动计算
身份证末位计算法

身份证号的前6位表示公民常住所在市、县、区的划分代码。
然后是8位出生日期码、表示公民公历年月日生日、然后3位是顺序码、表示在同一地址码所标识的区域范围内、对同年、同月、同日生的人编定的顺序号、单数分配给男性、双数分配给女性、第18位、校验码、采用数据处理系统、根据前17位数字码计算出来的、可以用来判定身份号码是否合法、真伪。
身份证号前17数字分别对应不同的系数、这个系数是规定好的、由左往右依次是7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2
用上面的17位数依次乘你身份证前17位数、然后把所得的积相加在除以11得到的余数再对应校验码!
得到的余0、1、2、3、4、5、6、7、8、9、10依次对应1、0、X、9、8、7、6、5、4、3、2
也就是说你身份正前17位相乘的积加起来除以11的余数是2、那么对应的就是X,否则这个身份证就是不合法的
第17数男性为单数、女性为双数、也就是说不用看身份证只要看这个号就知道男女了!查夜店在登记处有人用这个。
以前单位一个同事身份证号第18位就是X,都不明白是怎么回事,这回才明白,校验码是1,0,X,9,8,7,6,5,4,3,2.十一个数,也就是012345678910,其中用XX代替10,如果算出你前17位余数是2,那么你身份尾数就是10,这样就变成19位不合法了,所以X用10代替,X也是罗马号10的意思,这样就还是18位。
通过excel公共函数计算二代公民身份证号码末位校验码

通过excel公共函数计算二代公民身份证号码末位校验码/验证码(附公式可直接使用)闲来无事,用EXCEL写了个公式(本文最后),可以根据身份证号码前17位计算第18位校验码的,经过验证,非常有效。
使用这个公式可以自己随意编造可以通过验证的身份证号码(感觉在为办证的做贡献。
)18位身份证号码的结构:现在的二代身份证由18位数字组成1、前6位是行政区规划代码,第一位是区位号(如西北、西南),第二位为省份编号,第三、四位是城市编号,第五、六位是县区编号,01-19代表市辖区,20以后代表郊县、县级市等辖区。
具体的行政区域规划码可以可以在国家统计局网站查询:/tjbz/xzqhdm/t20021125_46781.htm2、第7-14位是出生年月日,格式是yyyymmdd;3、第15-17位是顺序码,即同一地区相同生日的人的顺序编码,随便写;4、第18位是根据GB 11643-1999和IOS 7064计算出的校验码,计算方式比较复杂,文章中的公式就是用来计算这个校验码的!下图是完整的身份证效验码计算方式:但是因为上图中的公式太多,不方便直接使用,所以我把上图中所有的公式整合到了一个单元格中,就是下面的超级公式~!现在,打开excel,先将A1单元格属性设置为文本,再把你准备好的1-17位身份证号码填入A1单元格,然后把公式拷到随便哪个单元格中,完整的身份证号码就计算出来了!还可以用下拉的方式同时计算多个号码,很省事吧!公式如下:=IF((LEN(A1))=17,(A1&IF(VALUE(MOD((SUM((MID(A1,1,1))*7,(MID(A1,2,1)) *9,(MID(A1,3,1))*10,(MID(A1,4,1))*5,(MID(A1,5,1))*8,(MID(A1,6,1))*4, (MID(A1,7,1))*2,(MID(A1,8,1))*1,(MID(A1,9,1))*6,(MID(A1,10,1))*3,(MI D(A1,11,1))*7,(MID(A1,12,1))*9,(MID(A1,13,1))*10,(MID(A1,14,1))*5,(M ID(A1,15,1))*8,(MID(A1,16,1))*4,(MID(A1,17,1))*2)),11))=0,1,(IF(VALU E(MOD((SUM((MID(A1,1,1))*7,(MID(A1,2,1))*9,(MID(A1,3,1))*10,(MID(A1, 4,1))*5,(MID(A1,5,1))*8,(MID(A1,6,1))*4,(MID(A1,7,1))*2,(MID(A1,8,1) )*1,(MID(A1,9,1))*6,(MID(A1,10,1))*3,(MID(A1,11,1))*7,(MID(A1,12,1)) *9,(MID(A1,13,1))*10,(MID(A1,14,1))*5,(MID(A1,15,1))*8,(MID(A1,16,1) )*4,(MID(A1,17,1))*2)),11))=1,0,(IF(VALUE(MOD((SUM((MID(A1,1,1))*7,( MID(A1,2,1))*9,(MID(A1,3,1))*10,(MID(A1,4,1))*5,(MID(A1,5,1))*8,(MID (A1,6,1))*4,(MID(A1,7,1))*2,(MID(A1,8,1))*1,(MID(A1,9,1))*6,(MID(A1, 10,1))*3,(MID(A1,11,1))*7,(MID(A1,12,1))*9,(MID(A1,13,1))*10,(MID(A1 ,14,1))*5,(MID(A1,15,1))*8,(MID(A1,16,1))*4,(MID(A1,17,1))*2)),11))= 2,"X",12-VALUE(MOD((SUM((MID(A1,1,1))*7,(MID(A1,2,1))*9,(MID(A1,3,1) )*10,(MID(A1,4,1))*5,(MID(A1,5,1))*8,(MID(A1,6,1))*4,(MID(A1,7,1))*2 ,(MID(A1,8,1))*1,(MID(A1,9,1))*6,(MID(A1,10,1))*3,(MID(A1,11,1))*7,( MID(A1,12,1))*9,(MID(A1,13,1))*10,(MID(A1,14,1))*5,(MID(A1,15,1))*8, (MID(A1,16,1))*4,(MID(A1,17,1))*2)),11)))))))),"输入长度不等于17位!")。
身份证号码第十八位效验码的计算方法

身份证号码第十八位效验码的计算方法- godson_h的专栏- CSDN 博客默认分类2010-04-10 07:56:04 阅读141 评论0 字号:大中小订阅身份证号码第十八位效验码的计算方法关于身份证第18是怎么计算的,原理如下:根据〖中华人民共和国国家标准 GB 11643-1999〗中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。
排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。
地址码(身份证前六位)表示编码对象常住户口所在县(市、旗、区)的行政区划代码。
(所有区域的编码可以到这个网站/tjbz/index.htm查询到最新的县及县以上的行政编码资料。
)生日期码(身份证第七位到第十四位)表示编码对象出生的年、月、日,其中年份用四位数字表示,年、月、日之间不用分隔符。
例如:1981年05月11日就用19810511表示。
顺序码(身份证第十五位到十七位)为同一地址码所标识的区域范围内,对同年、月、日出生的人员编定的顺序号。
其中第十七位奇数分给男性,偶数分给女性。
校验码(身份证最后一位)是根据前面十七位数字码,按照ISO 7064:1983.MOD 11-2校验码计算出来的检验码。
第十八位数字的计算方法为:1.将前面的身份证号码17位数分别乘以不同的系数。
从第一位到第十七位的系数分别为:7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 22.将这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.通过上面得知如果余数是2,就会在身份证的第18位数字上出现罗马数字的Ⅹ。
如果余数是10,身份证的最后一位号码就是2。
例如:某男性的身份证号码是340524************。
身份证最后一位按照ISO7064:1983.MOD11-2校验码

⾝份证最后⼀位按照ISO7064:1983.MOD11-2校验码,根据〖 GB 11643-1999〗中有关的规定,是特征组合码,由⼗七位数字本体码和⼀位数字校验码组成。
排列顺序从左⾄右依次为:六位数字地址码,⼋位数字出⽣⽇期码,三位数字顺序码和⼀位数字校验码。
即8位⾝份证号码的最后⼀位是数字校 校验码(⾝份证最后⼀位)是根据前⾯⼗七位数字码,按照ISO7064:1983.MOD11-2校验码计算出来的检验码。
计算⽅法: 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。
如果对应的数字是2,⾝份证的最后⼀位号码就是x。
例如:某男性的⾝份证号码为【530102************】,我们看看这个⾝份证是不是合法的⾝份证。
⾸先我们得出前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。
最后通过对应规则就可以知java--18位⾝份证号最后⼀位(检验码)是怎么算出来的?⾝份证的最后⼀位是根据前17位数字计算出来的检验码。
计算⽅法是:将⾝份证号码前17位数分别乘以不同的系数。
从第1位到第17位的系数分别为:7 9 10 5 8 4 2 1 6 3 7 9 105 8 4 2;将乘积之和除以11,余数可能为0 1 2 3 4 56789 10。
最新第二代身份证号码提取出生年月日的公式(很简单)

最新第⼆代⾝份证号码提取出⽣年⽉⽇的公式(很简单)1、第⼆代⾝份证号码提取出⽣年⽉⽇的公式:=MID(A1,7,4)&"-"&MID(A1,11,2)&"-"&MID(A1,13,2)注:A是列,1是⾏,&在数字键7的上⽅。
2、第⼆代⾝份证号码提取性别男、⼥的公式:=IF(MOD(MID(A1,17,1),2),"男","⼥")注:A是列,1是⾏。
3、excel⽤⾝份证号算年龄的⼯式⽐如⾝份证号保存在a1单元格,那么可以使⽤=mid(a1,7,4)来取出出⽣年,再⽤当前年份减去这个就是年龄了。
4、提取⾝份证出⽣年⽉="19"&MID(B1,9,2)&"年"&MID(B1,11,2)&"⽉"&MID(B1,13,2)&"⽇"5、提取⾝份证年龄=YEAR(NOW())-YEAR(IF(LEN(B1)=18,DATE(MID(B1,7,4),MID(B1,11,2),MID(B1,13,2)),DATE(MID(B1,7,2),MID(B1,9,2),MID(B1,11,2))))6、提取⾝份证性别=IF(LEN(B1)=15,IF(MOD(MID(B1,15,1),2)=1,"男","⼥"),IF(MOD(MID(B1,17,1),2)=1,"男","⼥"))7、公式内的“B1”代表的是输⼊⾝份证号码的单元格。
Excel⾃动提取⾝份证中⽣⽇和性别以及年龄(注意:以B2单元格中是18位⾝份证号为例)⼀、提取出⽣⽇期的输⼊公式=MID(B2,7,4)&"年"&MID(B2,11,2)&"⽉"&MID(B2,13,2)&"⽇"⼆、判断性别“男⼥”的输⼊公式=IF(MID(B2,17,1)/2=TRUNC(MID(B2,17,1)/2),"⼥","男")三、利⽤⾝份证号码求年龄=IF(B2="","",DATEDIF(TEXT((LEN(B2)=15)*19&MID(B2,7,6+(LEN (B2)=18)*2),"#-00-00"),TODAY(),"y"))⼋、计算年龄的公式?datedif(开始⽇期,结束⽇期,"M")九、⽤公式计算最⼤年龄?max(D3:D21)⼗、⽤公式计算25--35岁之间的⼈数?=COUNTIFS(D3:D21,">"&25,D3:D21,"<"&35)⼗⼀、计算25岁以下的⼈数?=COUNTIF(D3:D21,">"&25)⼗⼆、计算25岁以下⼈数的⽐例?=COUNTIF(D3:D21,">"&25)/count(D3:D21)⼗三、⽤excel做表输⼊年⽉⽇,可以变成例如1986-01-01的格式吗?能的话怎么变?先选中单元格,⿏标右击,“设置单元格格式”,“数字”,“⾃定义”,在类型处输⼊e-mm-dd 确定⼗四、1.⾃动录⼊性别:“=IF(LEN(C2)=15,IF(MOD(MID(C2,15,1),2)=1,"男","⼥"),IF(MOD(MID(C2,17,1),2)=1,"男","⼥"))”if假如(len(C2)得到C2的字符长度等于15,[15时mod除以2的余数(取mid(C2单元格,第15个的,1个字符),除以2)],[不等于15条件不成⽴时if(mod后⾯除以2的余数(取C2,第17个,的1个字符),除以2)]所涉及函数:len() 取单元格字符长度。
身份证的编码规则

身份证编码规则生活常识一、身份证号码执行标准:18位身份证标准在国家质量技术监督局于1999年7月1日实施的GB11643-1999《公民身份号码》。
GB11643-1999《公民身份号码》为GB11643-1989《社会保障号码》的修订版,其中指出将原标准名称“社会保障号码”更名为“公民身份号码”,另外GB11643-1999《公民身份号码》从实施之日起代替GB11643-1989。
二、编码规则:公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。
排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位校验码,可以用字母表示如为ABCDEFYYYYMMDDXXXR。
其含义如下:1. 地址码(ABCDEF):表示编码对象常住户口所在县(市、旗、区)的行政区划代码,按GB/T2260的规定执行。
2. 出生日期码(YYYYMMDD):表示编码对象出生的年、月、日,按GB/T7408的规定执行,年、月、日分别用4位、2位(不足两位加0)、2(同上)位数字表示,之间不用分隔符。
3. 顺序码(XXX):表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性。
4.校验码(R),一位数字,通过前17位数字根据一定计算得出。
三、关于地址码含义的详细解释:身份证前六位是地区代码,我们用ABCDEF表示。
代码的解释规则如下:A:国内区域1 华北三省二市2 东北三省3 华东六省一市4 华南六省5 西南四省一市6 西北五省7 台湾8 港澳B(或者说是AB,就是前2位):省(直辖市,自治区,特别行政区)代码按照A划定的分区定义省代码,有直辖市的,直辖市列前,其余按离直辖市的距离排序,没有直辖市的,按离北京的远近排序。
具体省(直辖市,自治区,特别行政区)代码如下:11-15 京 津冀 晋 蒙21-23 辽 吉黑31-37 沪 苏浙 皖 闽 赣 鲁41-46 豫 鄂湘 粤 桂 琼50-54 渝 川贵 云 藏61-65 陕 甘青 宁 新81-82 港 澳CD:城市代码从01开始排,对于直辖市,CD=01表示市辖区,CD=02表示辖县;省的城市代码从省会开始排,比如2101=沈阳 2102=大连…… 只有地级城市有独立的城市代码,县级市没有。
身份证校验码计算公式及实例计算
⾝份证校验码计算公式及实例计算校验码是识别⼀个⾝份证号码是否真实存在的重要的依据。
那我们要如何通过校验码来判断⼀个⾝份证号码是否真实的呢?校验码如何判断⾝份证号码真伪呢?我们来看看具体计划过程。
第⼀步:将⾝份证号码的第1位数字与7相乘;将⾝份证号码的第2位数字与9相乘;将⾝份证号码的第3位数字与10相乘;将⾝份证号码的第4位数字与5相乘;将⾝份证号码的第5位数字与8相乘;将⾝份证号码的第6位数字与4相乘;将⾝份证号码的第7位数字与2相乘;将⾝份证号码的第8位数字与1相乘;将⾝份证号码的第9位数字与6相乘;将⾝份证号码的第10位数字与3相乘;将⾝份证号码的第11位数字与7相乘;将⾝份证号码的第12位数字与9相乘;将⾝份证号码的第13位数字与10相乘;将⾝份证号码的第14位数字与5相乘;将⾝份证号码的第15位数字与8相乘;将⾝份证号码的第16位数字与4相乘;将⾝份证号码的第17位数字与2相乘。
第⼆步:将第⼀步⾝份证号码1~17位相乘的结果求和,全部加起来。
第三步:⽤第⼆步计算出来的结果除以11,这样就会出现余数为0,余数为1,余数为2,余数为3,余数为4,余数为5,余数为6,余数为7,余数为8,余数为9,余数为10共11种可能性。
第四步:如果余数为0,那对应的最后⼀位⾝份证的号码为1;如果余数为1,那对应的最后⼀位⾝份证的号码为0;如果余数为2,那对应的最后⼀位⾝份证的号码为X;如果余数为3,那对应的最后⼀位⾝份证的号码为9;如果余数为4,那对应的最后⼀位⾝份证的号码为8;如果余数为5,那对应的最后⼀位⾝份证的号码为7;如果余数为6,那对应的最后⼀位⾝份证的号码为6;如果余数为7,那对应的最后⼀位⾝份证的号码为5;如果余数为8,那对应的最后⼀位⾝份证的号码为4;如果余数为9,那对应的最后⼀位⾝份证的号码为3;如果余数为10,那对应的最后⼀位⾝份证的号码为2。
⽐如:⾝份证号码 432831************ 这个⾝份证是否是有效⾝份证号码呢?请看校验码分析。
身份证计算公式
身份证号码15位升18位身份证18位验证18位身份证标准在国家质量技术监督局于1999年7月1日实施的GB11643-1999《公民身份号码》中做了明确的规定。
GB11643-1999《公民身份号码》为GB11643-1989《社会保障号码》的修订版,其中指出将原标准名称"社会保障号码"更名为"公民身份号码",另外GB11643-1999《公民身份号码》从实施之日起代替GB11643-1989。
G B11643-1999《公民身份号码》主要内容如下:一、范围该标准规定了公民身份号码的编码对象、号码的结构和表现形式,使每个编码对象获得一个唯一的、不变的法定号码。
二、编码对象公民身份号码的编码对象是具有中华人民共和国国籍的公民。
三、号码的结构和表示形式1、号码的结构公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。
排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。
2、地址码表示编码对象常住户口所在县(市、旗、区)的行政区划代码,按GB/T2260的规定执行。
3、出生日期码表示编码对象出生的年、月、日,按G B/T7408的规定执行,年、月、日代码之间不用分隔符。
4、顺序码表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性。
5、校验码(1)十七位数字本体码加权求和公式S= Sum(Ai * Wi), i =0, ... , 16 ,先对前17位数字的权求和Ai:表示第i位置上的身份证号码数字值Wi:表示第i位置上的加权因子Wi: 7 9 10 5 84 2 1 6 37 9 10 5 8 4 2(2)计算模Y = mo d(S,11) (3)通过模得到对应的校验码Y:0 1 2 3 45 6 7 8 910校验码: 1 0 X9 8 7 6 54 3 2四、举例如下:北京市朝阳区: 11010519491231002X广东省汕头市: 44052418800101001415位升18的方法根据〖中华人民共和国国家标准G B 11643-1999〗中有关公民身份号码的规定,公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。
电子表格身份证自动生成出生日期
电子表格身份证自动生成出生日期篇一:在EXCEL中用身份证号码自动生成出生年月EXCEL中用身份证号码自动生成出生年月年龄及性别在学校的人事管理中经常会遇到需要统计教职工的年龄的问题,但案头的原始资料只有身份证号码,其实这足够了。
在EXCEL中,引用其内置函数利用身份证号码达到此目的比较简单。
1、身份证号码简介(18位):1~6位为地区代码;7~10位为出生年份;11~12位为出生月份;13~14位为出生日期;15~17位为顺序号,并能够判断性别,奇数为男,偶数为男;第18位为校验码。
2、确定“出生日期”:18位身份证号码中的生日是从第7位开始至第14位结束。
提取出来后为了计算“年龄”应该将“年”“月”“日”数据中添加一个“/”或“-”分隔符。
①正确输入了身份证号码。
(假设在D2单元格中)②将光标定位在“出生日期”单元格(E2)中,然后在单元格中输入函数公式“=MID(D2,7,4)&-&MID(D2,11,2)&-& MID(D2,13,2)”即可计算出“出生日期”。
关于这个函数公式的具体说明:MID函数用于从数据中间提取字符,它的格式是:MID(text,starl_num,num_chars)。
T ext是指要提取字符的文本或单元格地址(上列公式中的D2单元格)。
starl_num是指要提取的第一个字符的位置(上列公式中依次为7、11、13)。
num_chars指定要由MID所提取的字符个数(上述公式中,提取年份为4,月份和日期为2)。
多个函数中的“&”起到的作用是将提取出的“年”“月”“日”信息合并到一起,“/”或“-” 分隔符则是在提取出的”年”“月”“日”数据之间添加的一个标记,这样的数据以后就可以作为日期类型进行年龄计算。
操作效果如下图:3、确定“年龄”:“出生日期”确定后,年龄则可以利用一个简单的函数公式计算出来了:将光标定位在“年龄”单元格中,然后在单元格中输入函数公式“=INT((TODAY()-E2)/365)”即可计算出“年龄”。
excel用身份证号码自动生成出生年月日
一、先给实例,不用搞懂原理假设:A1栏内有身份证号码,要在B1栏中自动生成年月日,那么就在B1栏中输入以下公式。
(由于A1是假定的,可以任意替换,所以在下面的公式中用红色醒目标出)公式如下:=IF(LEN(A1)=18,MID(A1,7,4)&"年"&MID(A1,11,2)&"月"&MID(A1,13,2)&"日",IF(LEN(A1)=15,MID(A1,7,2)&"年"&MID(A1,9,2)&"月"&MID(A1,11,2)&"日","无效身份证号码"))显示的效果如下:XXXX年XX月XX日,如1984年04月28日二、有兴趣就拓展一下根据基本情况,在不需要理解公式含义的情况下,就可以派生出其他几种不同的显示格式出来。
三、还有兴趣就总结一下身份证号码为15位的,第七、八位为出生年,第九、十位为出生月,第十一、十二位为出生日;身份证号码为18位的,第七、八、九、十位为出生年,第十一、十二位为出生月,第十三、十四位为出生日。
以上运用到的函数1. Len函数(1)函数作用:用来对单元格内容的长度进行测量。
(2)使用语法:LEN(text)说明:text 是要查找其长度的文本。
空格将作为字符进行计数。
2. MID函数(1)函数作用:根据用户自行指定的开始位置和字符长度对某单元格进行字符提取。
(2)使用语法:MID(text,start_num,num_chars)说明:Text 是包含要提取字符的文本字符串,可以直接输入含有目标文字的单元格名称。
Start_num 是文本中要提取的第一个字符的位置。
文本中第一个字符的start_num 为 1,以此类推。
Num_chars 指定希望 MID 从文本中返回(提取)字符的个数。