EXCEL中如何从身份证号码提取出生年月日及性别
、转换身份证号码格式
我们先将学生的身份证号完整地输入到EXCEL表格中,这时默认为“数字”格式(单元格内显示的是科学记数法的格式),需要更改一下数字格式。选中该列中的所有身份证号后,右击鼠标,选择“设置单元格格式”。在弹出对话框中“数字”标签内的“分类”设为“文本”,然后点击确定。
三、提取个人信息
这里,我们需要使用IF、LEN、MOD、MID、DATE等函数从身份证号码中提取个人信息。假设学生的身份证号码信息已输入完毕(C列),出生年月信息填写在D列,性别信息填写在B列。
1. 提取出生年月信息
如果上交报表时需要填写出生年月日,我们需要关心身份证号码的相应部位即可,即显示为“19890807”这样的信息。在D2单元格中输入公式
=IF(LEN(C2)=15,"19"&MID(C2,7,6),MID(C2,7,8)),其中:
如果需要显示为“1989-08-07”这样的格式,可以把上面的公式稍加修改即可:
=IF(LEN(C2)=15,"19"&MID(C2,7,2)&"-"&MID(C2,9,2)&"-"&MID(C2,11,2),MID(C2,7,4)&"-"&MID(C2,11,2)&"-"&MID(C2,13,2))。
也可以使用DATE格式,并在“单元格格式→日期”中进行设置。
如果学生的身份证号全部都是18位的新一代身份证,可以以把上面的公式进行简化:
=MID(C2,7,4)&"-"&MID(C2,11,2)&"-"&MID(C2,13,2)
2. 提取性别信息
由于报表中学生不是按照男、女固定的顺序进行编排,如果一个一个手工输入的话,既
麻烦又容易出错。
mid函数提取年月日 例如性别信息统一在B列填写,可以在B2单元格中输入公式:
=IF(MOD(IF (LEN(C2)=15,MID(C2,15,1),MID(C2,17,1)),2)=1,"男","女")
提取性别也可以使用下面这个公式(无论是15位还是18位):
=IF(LEN(C2)=15,IF(MOD(MID(C2,15,1),2)=1,"男","女"),IF(MOD(MID(C2,17,1),2)=1,"男","女")
如果学生的身份证号全部都是18位的新一代身份证,可以使用下面的公式:
=IF(MID(C2,17,1)/2=TRUNC(MID(C2,17,1)/2),"女","男")
如果身份证号的输入已是15或18位,还可以用公式:
=IF(MOD(LEFT(RIGHT(C2,(LEN(C2)=18)+1)),2),"男","女")
3.如果D3单元格是出生日期,计算年龄的公式:
=IF(ISERROR(YEAR(TODAY())-YEAR(D3))," ",YEAR(TODAY())-YEAR(D3))
如果身份证号码在a2, 输入公式:
=IF(A2<>"",DATEDIF(TEXT((LEN(A2)=15)*19&MID(A2,7,6+(LEN(A2)=18)*2),"#-00-00"),TODAY(),"y"),)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论