如何在Excel中填写身份证号码后自动提取出生年月日、年龄、性别本公式只适合于18位身份证号码即二代居民身份证。
假如:A1输入身份证号码、B1显示性别、C1显示出生日期、D1显示周岁。
(要注意A1、B1、C1、D1分别对应A列1行B列1行C列1行D列1行,如你的A1单元格不为你的表格第一项身份证编号则需将A1替换成你选取的单元格)需要设置:A1单元格为文本格式、B1和D1为常规格式、C1为日期格式。
(选中列右键设置单元格格式可选取格式)1、显示性别:B1输入公式:=IF(A1="","",IF(AND(LEN(A1)<>15,LEN(A1)<>18),"错误",IF(ISERROR(1*(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00"))),"错误",IF(OR((1*(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00")))<VALUE ("1905-01-01"),(1*(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00")))> TODAY()),"错误",IF(MOD(MID(A1,15+(LEN(A1)=18)*2,1),2)=0,"女","男")))))2、C1输入公式:=IF(A1="","",IF(AND(LEN(A1)<>15,LEN(A1)<>18),"错误",IF(ISERROR(1*(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00"))),"错误",IF(OR((1*(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00")))<VALUE ("1905-01-01"),(1*(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00")))> TODAY()),"错误",VALUE(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#年00月00日"))))))3、D1输入公式:=IF(ISERROR(1*(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00"))),"错误",IF(OR((1*(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00")))<VALUE ("1905-01-01"),(1*(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00")))> TODAY()),"错误",DATEDIF(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),"#-00-00"),TODAY(), "y")))注意:A1、B1、C1、D1分别对应A列1行B列1行C列1行D列1行,如你的A1单元格不为你的表格第一项身份证编号则需将A1替换成你选取的单元格如下图那么上述B1、C1、D1输入函数中应将A1替换成F4即可。