如何在Excel利用身份证号快速批量算出实际年龄

2025-03-11 10:02:11
推荐回答(5个)
回答1:

现在身份证都是18位了,设身份证号在A1,要在B1中得到年龄,
B1=DATEDIF(TEXT(MID(A1,7,8),"0-00-00"),TODAY(),"Y")
这样就得到了截止到今天为止的年龄,如果是截止到如2016年3月31日,那么
B1=DATEDIF(TEXT(MID(A1,7,8),"0-00-00"),"2016-3-31","Y")

如果还有旧的15位身份证,那么就稍复杂一些
B1=DATEDIF(TEXT(19*(LEN(A1)=15)&MID(A1,7,6+2*(LEN(A1)=18)),"0-00-00"),"2016-3-31","Y")

回答2:

如果身份证在A1中,输入下面的就可以=DATEDIF(DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2)),TODAY(),"y")
函数分别是年轮计算DATEDIF,日期序列DATE,数据提取MID

回答3:

现在身份证都是18位了,设身份证号在A1,要在B1中得到年龄,

B1=DATEDIF(TEXT(MID(A1,7,8),0-00-00),TODAY(),Y)

这样就得到了截止到今天为止的年龄,如果是截止到如2016年10月11日,那么

B1=DATEDIF(TEXT(MID(A1,7,8),0-00-00),2016-10-11,Y)

回答4:

假定身份证号在A1,公式如下:
=TEXT(TODAY()-DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2)),"YY岁零MM个月")

回答5:

=DATEDIF(DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2)),TODAY(),"y")