第1个回答 2008-12-12
15位和18位的身份证号都合适的了。设内容如下:
........A列......B列......C列......D列....
1 身份证号 性别 出生年月 年龄
2(输入身份证号)
算年龄的:“=IF(OR(LEN(A2)=15,LEN(A2)=18),RIGHT(IF(IF(LEN(A2)=15,MID(A2,9,2),MID(A2,11,2))*100+IF(LEN(A2)=15,MID(A2,11,2),MID(A2,13,2))>MONTH(TODAY())*100+DAY(TODAY()),YEAR(TODAY())-IF(LEN(A2)=15,MID(A2,7,2),MID(A2,9,2))-1,YEAR(TODAY())-IF(LEN(A2)=15,MID(A2,7,2),MID(A2,9,2))),2),"证号错误")”
算性别的:“=IF(LEN(A2)=15,(IF(OR(ABS(RIGHT(A2))=1,ABS(RIGHT(A2))=3,ABS(RIGHT(A2))=5,ABS(RIGHT(A2))=7,ABS(RIGHT(A2))=9),"男","女")),(IF(OR(ABS(MID(A2,17,1))=1,ABS(MID(A2,17,1))=3,ABS(MID(A2,17,1))=5,ABS(MID(A2,17,1))=7,ABS(MID(A2,17,1))=9),"男","女")))”
算出生年月的:“=DATE(IF(LEN(E3)=15,MID(E3,7,2),MID(E3,9,2)),IF(LEN(E3)=15,MID(E3,9,2),MID(E3,11,2)),IF(LEN(E3)=15,MID(E3,11,2),MID(E3,13,2)))”
只要把输入身份证号的单元格格式设为“文本”就是最关键的,准确。
第3个回答 2014-11-11
假如:身份证号码在A1栏,年龄在B1栏,则B1=DATEDIF(TEXT(IF(LEN(A1)=18,MID(A1,7,8),19&MID(A1,7,6)),"0000-00-00"),TODAY(),"y")就得到你需要的年龄
又如:出生日期在A1栏,年龄在B1栏,则B1=DATEDIF(A1,TODAY(),"Y")就得胸需要的年龄