打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
用Excel自制身份证验证器,所有身份证信息都囊括全了(建议收藏)

最终效果演示

了解身份证结构

公民身份号码是特征组合码,由十七位数字本体码和一位数字校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。

1.号码的结构

公民身份号码是特征组合码,由十七位数字本体码和一位校验码组成。排列顺序从左至右依次为:六位数字地址码,八位数字出生日期码,三位数字顺序码和一位数字校验码。

2.地址码

表示编码对象常住户口所在县(市、旗、区)的行政区划代码,按GB/T2260的规定执行。

3.出生日期码

表示编码对象出生的年、月、日,按GB/T7408的规定执行,年、月、日代码之间不用分隔符。

4.顺序码

表示在同一地址码所标识的区域范围内,对同年、同月、同日出生的人编定的顺序号,顺序码的奇数分配给男性,偶数分配给女性。

5.校验码

根据前面十七位数字码,按照ISO 7064:1983.MOD 11-2校验码计算出来的检验码。作为尾号的校验码,是由号码编制单位按统一的公式计算出来的,如果某人的尾号是0-9,都不会出现X,但如果尾号是10,那么就得用X来代替,因为如果用10做尾号,那么此人的身份证就变成了19位,而19位的号码违反了国家标准,并且中国的计算机应用系统也不承认19位的身份证号码。Ⅹ是罗马数字的10,用X来代替10,可以保证公民的身份证符合国家标准。

这18位数字或字母所代表的含义如下:

(1)前1、2位数字表示:所在省份的代码;(2)第3、4位数字表示:所在城市的代码;(3)第5、6位数字表示:所在区县的代码;(4)第7~14位数字表示:出生年、月、日(7.8.9.10位是年,11.12位是月,13.14位是日);(5)第15、16位数字表示:所在地的派出所的代码;(6)第17位数字表示性别:奇数表示男性,偶数表示女性;(7)第18位数字是校检码:校检码可以是0~9的数字,有时也用x表示。

如图所示:

18位数字代表的含义

校验码的计算方法

首先按要求做好表格,填写相应的内容,如下图所示:

1、将前面的身份证号码17位数分别乘以不同的系数。从第一位到第十七位的系数分别为:7-9-10-5-8-4-2-1-6-3-7-9-10-5-8-4-2。

完成后如下图所示:

2、将这17位数字和系数相乘的结果相加,公式这里就不具体讲解了。

3、用加出来和除以11,看余数是多少(余数为4)?

4、余数只可能有0-1-2-3-4-5-6-7-8-9-10这11个数字。其分别对应的最后一位身份证的号码为1-0-X -9-8-7-6-5-4-3-2。(即余数0对应1,余数1对应0,余数2对应X...)。在核对表格一栏将他们的对应关系填好。

5、通过上面得知如果余数是3,就会在身份证的第18位数字上出现的是9。如果对应的数字是2,身份证的最后一位号码就是罗马数字。根据余数值在对应的校验码栏写上相应的对应数字,这里我们用公式计算。

判断身份证是否正确

判断的原理就是取出身份证的最后一位,看是否与算出来的校验码相等,这里我们也利用公式进行判断,如下图所示:

正确显示TRUE,错误显示FALSE,这里为了方便查看,我们加上条件格式,当显示TRUE时单元格底色为绿色,当显示FALSE时单元格底色为红色

根据身份证号提取出基本的身份信息(性别、年龄、生肖等等)

这里直接告诉大家函数即可,不深入讲解,如有需要私信交流,这里涉及到区域代码表大家可以自行百度下载,也可私信索取。


性 别:

=IFERROR(IF(MOD(MID(B3,17,1),2),'男','女'),'')

年 龄:

=IFERROR(DATEDIF(--TEXT((LEN(B3)=15)*19&MID(B3,7,6 (LEN(B3)=18)*2),'0-00-00'),TODAY(),'y')&'周岁零'&DATEDIF(--TEXT((LEN(B3)=15)*19&MID(B3,7,6 (LEN(B3)=18)*2),'0-00-00'),TODAY(),'ym')&'月'&DATEDIF(--TEXT((LEN(B3)=15)*19&MID(B3,7,6 (LEN(B3)=18)*2),'0-00-00'),TODAY(),'md')&'天','')

出生日期:

=IFERROR(TEXT(MID(B3,7,8),'0年00月00日'),'')

生 肖:

=IFERROR(IF(LEN(B3)=15,MID('鼠牛虎兔龙蛇马羊猴鸡狗猪',MOD('19'&MID(B3,7,2)-4,12) 1,1),

MID('鼠牛虎兔龙蛇马羊猴鸡狗猪',MOD(MID(B3,7,4)-4,12) 1,1)),'')

星 座:

=IFERROR(VLOOKUP(VALUE('1900-'&TEXT(MID(B3,LEN(B3)/2 2,4),'#-##')),{1,'摩羯座';20,'水瓶座';50,'双鱼座';81,'白羊座';111,'金牛座';142,'双子座';174,'巨蟹座';205,'狮子座';236,'处女座';267,'天秤座';298,'天蝎座';328,'射手座';357,'摩羯座'},2,TRUE),'')

所在地区:

=IFERROR(VLOOKUP(LEFT(B3,6),区域代码!A:B,2,1),'')

如果大家不想动手自己做的话,可以私信我索要附件。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
验证身份证号是否正确的代码
巧取身份证六大信息
Excel和身份证不得不说的那些事儿
如何将Excel函数运用到身份证的查询上
【函数】设置 身份证识别年龄、性别、户籍
中国身份证编码规则
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服