计算截止到选定年月日的年龄

A1列为身份证号,要求根据身份证号从中计算出截止到2011年7月31日的年龄,小于10岁的不能反映为两位数.网上有人提供的!=IF((RIGHT(20110731-IF(LEN(A1)=15,19&TEXT(MID(A1,7,6),"00-00-00"),TEXT(MID(A1,7,8),"00000000")),4))>0,LEFT(20110731-IF(LEN(A1)=15,19&TEXT(MID(A1,7,6),"00-00-00"),TEXT(MID(A1,7,8),"00000000")),2),LEFT(20110731-IF(LEN(A1)=15,19&TEXT(MID(A1,7,6),"00-00-00"),TEXT(MID(A1,7,8),"00000000")),2)-1) ,结果是小于10岁的变成两位数,不能成功.我指的是根据身份证号,不是出生年月日,我希望一步成功.谢谢
A列是身份证号,不是出生年月日,请各位注意,如果是出生日期的话,我自己已经解决了.是15或18位的身份证号.

第1个回答  2011-09-21
既然是求年龄,还需要用月份和日期吗?
B1输入
=2011-(--TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"0-00-00"))
第2个回答  2011-09-21
=DATEDIF(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00"),"2011-7-31","y")本回答被提问者采纳
第3个回答  2011-09-22
如果你的出生数据放在A列(注意要是日期格式的,如1999-11-12),我们在B列的B1写公式:
=DATEDIF(A1,"2010-08-31","y")
去试一试吧!祝你成功!!!

相似回答