⾝份证号码举例
张国强主演的电视剧⾝份证号码举例
⾝份证整个号码的含义是什么?
18位⾝份证号码各位的含义:
1-2位省、⾃治区、直辖市代码;
3-4位地级市、盟、⾃治州代码;
5-6位县、县级市、区代码;
7-14位出⽣年⽉⽇,⽐如19670401代表1967年4⽉1⽇;
15-17位为顺序号,其中17位(倒数第⼆位)男为单数,⼥为双数;
18位为校验码,0-9和X。作为尾号的校验码,是由号码编制单位按统⼀的公式计算出来的,计算的结果是0-10,如果某⼈的尾号是0-9,都不会出现X,但如果尾号是10,那么就得⽤X来代替,因为如果⽤10做尾号,那么此⼈的⾝份证就变成了19位。X是罗马
数字的10,⽤X来代替10。
举例:
130503 19670401 0012这个⾝份证号的含义: 13为河北,05为邢台,03为桥西区,出⽣⽇期为1967年4⽉1⽇,顺序号为001,2为校验码。
15位⾝份证号码各位的含义:
1-2位省、⾃治区、直辖市代码;
3-4位地级市、盟、⾃治州代码;
5-6位县、县级市、区代码;
7-12位出⽣年⽉⽇,⽐如670401代表1967年4⽉1⽇,这是和18位号码的第⼀个区别;
13-15位为顺序号,其中15位男为单数,⼥为双数;
与18位⾝份证号的第⼆个区别:没有最后⼀位的校验码。
举例:
130503 670401 001的含义; 13为河北,05为邢台,03为桥西区,出⽣⽇期为1967
年4⽉1⽇,顺序号为001。
Excel⾝份证号码校验实例
⾝份证号码是按照⼀定规律编制的,是个⼈⾝份的有效证明,每个⼈只有⼀个号码,且不会重复,因⽽被各单位各部门⼴泛应⽤在相关名册中。在⼤量的⾝份证号码录⼊过程中,由于抄写或录⼊等原因,可能会弄错了某位数字,如果录错了任何⼀位数字,计算出来的校验码就不⼀样。根据这⼀特点,本函数可以对已录⼊的⼤批量⾝份证号码进⾏校验,如果校验未通过,则说明你录⼊的号码中必定是某位数字错了,应及时更正,以保证⾝份证号码正确有效,如果录⼊的是第⼀代15位⾝份证号码,本函数将返回18位号码,使⾝份证号码保持
统⼀的位数。
代码如下:
Function IDcheck(ID) '⾝份证号码校验函数
Dim s, i As Integer
Dim e, z As String
Part1: '----------------------------⾝份证号码合法性检查---------------------------------------
If Not (Len(ID) = 18 Or Len(ID) = 15) Then '位数检验cto男团
IDcheck = "位数错误"
Exit Function
Else
If Len(ID) = 15 Then ID = Left(ID, 6) & "19" & Right(ID, 9)
If IsNumeric(Left(ID, 17)) = False Or InStr(ID, ".") > 0 Then '字符检验
IDcheck = "字符错误"
Exit Function
End If
On Error Resume Next '⽇期检验
If DateValue(Mid(ID, 7, 4) & "-" & Mid(ID, 11, 2) & "-" & Mid(ID, 13, 2)) < 1 Or _ DateValue(Mid(ID, 7, 4) & "-" & Mid(ID, 11, 2) & "-" & Mid(ID, 13, 2)) > Date Then IDcheck = "⽇期错误"
心痛2009Exit Function
End If
End If
Part2: '-----------------------------校验码的⽣成及检查----------------------------------------
s = 0
For i = 1 To 17
s = s + Val(Mid(ID, 18 - i, 1)) * (2 ^ i Mod 11)
Next最新韩剧排行榜
e = Mid("10X98765432", (s Mod 11) + 1, 1) '⽣成校验码
徐峥主演的电视剧If Len(ID) = 18 Then
红包8字幽默短留言z = UCase(Right(ID, 1))
If z = e Then '校验码对⽐
IDcheck = "通过"
Else
IDcheck = "校验未通过" '如果要返回校验码,请把本⾏语句改为:IDcheck = e End If
Else
IDcheck = ID & e '15位⾝份证号码升位
End If
End Function '编写474589791 2011年6⽉11⽇
使⽤⽅法:
⼀、建⽴函数
1、打开excel,点击菜单的“⼯具→宏→录制新宏”,弹出录制新宏对话框。
2、在“保存在”下⾯选择“个⼈宏⼯作簿”,点击确定。(选择个⼈宏⼯作簿有2⼤好处:①使本函数可应⽤于当前计算机中所有的excel⼯作表;②不受宏安全性设置⾼低的影响。)
3、在弹出的录制宏⼯具中点击“停⽌录制”按钮,结束宏的录制。
4、点击菜单的“⼯具→宏→Visual Basic 编辑器”,打开编辑器。
5、在编辑器中可以看到刚才录制的代码“Sub macrol()”,还有录制时间等内容。选中
编辑器中的代码并删除。
注:如果编辑器中没有出现PERSONAL.XLS - 模块1(代码),请在左边“⼯程资源管理器”中到PEROSNAL.XLS下⾯的模块1并双击。
6、把以上代码复制到编辑器中,保存并退出编辑器。⾄此,你就可以使⽤本函数了。
⼆、函数的使⽤
1、打开名册,点击⾝份证号码后⾯⽤于存放校验结果的空⽩单元格,点击插⼊函数按钮fx ,弹出插⼊函数对话框。
2、在“选择类别”中选择“⽤户定义”类。
3、可以看到“选择函数”下⾯出现了刚才保存的PERSONAL.XLS!IDcheck 函数,选中该函数,点击确定按钮,弹出“函数参数”对话框。
4、点击⼯作表上对应的⾝份证号码单元格(下图为A2单元格),点击“确定”按钮。
发布评论