在前面的几篇Excel身份证号码的文章中,我已经讲解了如何利用Excel身份证号码来获取出生年月日以及判断男女性别等函数公式,今天,再继续我们的Excel身份证号码的专题。讲解一下利用身份证号码来计算出年龄,当然,这个年龄是根据系统当前时间来计算,也可以你自定义指定时间来计算。这里我提供四种不同的公式方法来实现。

方法一、按当前系统日期计算

在B2单元格,输入公式:【=DATEDIF(TEXT(MID(A2,7,8),"#-00-00"),TODAY(),"Y")】
DATEDIF:计算机日期比较函数;
TEXT:将数值转换为按指定数字格式表示的文本;
MID:截取出指定数量的字符;
TODAY:用于返回当前时间;
Y:指计算两个日期的年差数;

方法二、同样也是按照当前系统日期

输入公式:【=DATEDIF(TEXT((LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),"#-00-00"),TODAY(),"y")】。也可以同样的计算出年龄。

方法三、计算精确年龄

这种方法是计算出精确年龄,精确到年、月、日、天。公式有点长。
公式:【=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")&"天"】。

方法四、按指定日期计算年龄

上面几种方法都是以当前时间来计算出年龄的,这第四种方法是按指定的日期来计算年龄,比如我要计算身份证号码上的年龄一直到2010年01月01日是多少岁。应该输入什么公式呢?
输入公式:【=DATEDIF(TEXT(MID(A2,7,6+(LEN(A2)=18)*2),"#-00-00")*1,"2010-01-01","y")】
如果想要自定义自己指定日期,可以自由修改下列公式中的【2010-01-01】来实现。
好了,方法就已经交给大家了,大家可以动手试试效果哟!