excel怎么在身份证号里提取生日日期

如题所述

身份证号码有15位和18位之分,借助IF加LEN函数来判断。

如果单元格身份证号是15位的话,提取出生年月日=MID("身份证号",7,6)

如果单元格身份证号是18位的话,提取出生年月日=MID("身份证号",7,8)

在F2单元格输入=IF(LEN(A2)=18,MID(A2,7,8),IF(LEN(A2)=15,MID(A2,7,6),"错误"))

如果身份证号不是15位或者18位就显示错误。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-09-27

Excel如何从身份证号码中提取出生日期?这个视频告诉你!

第2个回答  2020-09-14
1
首先来看一下原始数据情况,a列为18位身份证号,需要将出生日期(即a2单元格中红色标注文本内容)提取到b2单元格。
2
由于在18位身份证号中出生日期的位置是固定的,即从第7位开始的8位数字是出生日期信息,因此,我们可以用mid函数将出生日期提取出来。
双击b2,输入公式:=mid(a2,7,8),
3
这样提取出来的日期还是文本格式,也不符合我们一般习惯的日期格式,因此我们用text()函数进一步加工。
将b2公式改成:=text(mid(a2,7,8),"#-00-00")。
4
经过上一步的公式计算,单元格返回的内容看起来是更符合我们习惯的日期格式,但其实内容仍是文本,无法直接参与其他公式运算。我们要进一步将它改成真正日期格式。
将b2的公式改成:=--text(mid(a2,7,8),"#-00-00")
5
通过上面的操作,单元格返回的内容是一个数字,我们需要通过设置单元格格式的方法改成日期格式显示。
如下图,选中单元格,鼠标右键,选择【设置单元格格式】,然后在【自定义】中输入代码:yyyy-mm-dd,然后【确定】即可。
6
15位的身份证号方法类似,由于出生日期位置也是固定的,所以把公式修改成:
=--text(mid(a3,7,6),"#-00-00")
7
如果既有18位也有15位的身份证号,可以将公式修改一下,同时适应这两种情况:
=--text((len(a2)=15)*19&mid(a2,7,6+(len(a2)=18)*2),"0-00-00")