如何在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(mid函数提取年月日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即可。(替换简便方法:ctrl+F键调出查对话框选择—替换—查内容填A1—替换填你填写身份证号码的第一项单元格名称)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。