Excel根据身份证号码判断“年龄”

Excel情报局
Excel职场联盟
生产挖掘分享Excel基础技能
Excel爱好者大本营
用1%的Excel基础搞定99%的职场问题
做一个超级实用的Excel公众号
Excel是门手艺玩转需要勇气
数万Excel爱好者聚集地
SUPER EXCEL MAN

群主,身份证号码可以提取年龄吗?

当然可以,公式提取就可以了

忘记公式了

那你需要先了解身份证的结构

可以具体讲讲嘛?

那看一下今天的文章吧!

1

职场实例

在前天的文章中,小编已经讲解了如何利用Excel身份证号码来获取男女性别的函数公式:

Excel根据身份证号码判断男女性别

今天,我们继续讲解一下利用身份证号码来计算出年龄,当然,这个年龄是根据系统当前时间来计算的,也可以自定义指定时间来计算。

2

了解身份证号码的结构含义

首先,我们要了解身份证的号码的规则:

1、1-2位:前两位代表各省级政府的代码。

2、3-4位:3-4位代表地、市级政府代码。

3、5-6位:5-6位代表县、区级政府代码。

4、7-14位:7-14位代表身份证持有人的出生年、月、日。

5、15-18位:15-18位代表身份证持有人在当地的顺序码,其中奇数为男、偶数为女。

作为尾号的校验码,是由号码编制单位按统一的公式计算出来的,如果某人的尾号是0-9,都不会出现X,但如果尾号是10,那么就得用X来代替,因为如果用10做尾号,那么此人的身份证就变成了19位,而19位的号码违反了国家标准,并且中国的计算机应用系统也不承认19位的身份证号码。

Ⅹ是罗马数字的10,用X来代替10,可以保证公民的身份证符合国家标准。

综上所述,我们知道了身份证第7位数字至第14位数字表示出生年月,知道这一规则后,我们就知道应该从何下手了。

3

解决方案1

按当前系统日期计算

在B2单元格输入公式:

=DATEDIF(TEXT(MID(A2,7,8),"#-00-00"),TODAY(),"Y")

DATEDIF:计算机日期比较函数;

TEXT:将数值转换为按指定数字格式表示的文本;

MID:截取出指定数量的字符;

TODAY:用于返回当前时间;

Y:指计算两个日期的年差数;

4

解决方案2

按当前系统日期计算

在B2单元格输入公式:

=DATEDIF(TEXT((LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),"#-00-00"),TODAY(),"y")

5

解决方案3

按当前系统日期计算

这种方法是计算出精确年龄,精确到年、月、日、天。

在B2单元格输入公式:

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

6

解决方案4

按指定日期计算年龄

这种方法是按指定的日期来计算年龄,比如我要计算身份证号码上的年龄到2021年6月14日是多少岁。

在B2单元格输入公式:

=DATEDIF(TEXT(MID(A2,7,6+(LEN(A2)=18)*2),"#-00-00")*1,"2021-06-14","y")

如果想要自定义自己指定的日期,可以自由修改公式中的“2021-06-14”来实现。比如我们将其修改为了“2022-05-01”。

阅读完文章之后,希望小伙伴们在文章底部帮助小编[点赞]点亮[在看]并分享转发到[朋友圈],坚持持续分享的路上很辛苦,需要有你们的鼓励与支持!
(0)

相关推荐