Excel表格中从身份证号提取出生日期的专业方法详解
Excel表格中从身份证号提取出生日期的专业方法详解
在处理人事或财务数据时,经常需要从身份证号码中提取出生日期。中国的身份证号码有15位和18位两种格式,其中18位身份证的第7-14位为出生日期(YYYYMMDD),而15位身份证的第7-12位(YYMMDD)且年份为1900年后。以下介绍几种专业、高效的Excel方法。
方法一:使用MID函数配合DATE函数
适用于18位和15位身份证号,需要判断位数。
- 假设身份证号在A1单元格,在B1输入公式:
=IF(LEN(A1)=18,DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2)),IF(LEN(A1)=15,DATE(1900+MID(A1,7,2),MID(A1,9,2),MID(A1,11,2)),"无效")) - 该公式先判断长度:18位时用
MID依次提取年、月、日;15位时年份加1900。 - 注意:如果身份证号有空格或文本格式,先使用
=TRIM(A1)清洗。
方法二:使用TEXT函数(适合18位)
仅适用于18位身份证,但更简洁。
- 在B1输入:
=TEXT(MID(A1,7,8),"0000-00-00") - 结果为文本格式的日期(如1990-01-01)。若要转换为真正的日期,可外层套用
DATEVALUE函数:=DATEVALUE(TEXT(MID(A1,7,8),"0000-00-00"))
方法三:使用“分列”功能(无公式)
适合一次性批量提取,无需记忆公式。
- 选中身份证号码列,点击“数据”->“分列”。
- 选择“固定宽度”,在出生日期前后设置分列线(如第6位后、第14位后)。
- 跳过中间字段,将日期部分设置为日期格式(YMD)。
- 注意:15位身份证需要先补全为18位,或手动调整。
注意事项
- 数据验证:提取后建议用
=ISNUMBER(B1)检查是否为日期数值。 - 15位处理:15位身份证年份默认为1900+,但实际年份可能为1900后,若有1949年前出生则需特殊处理(罕见)。
- 错误值:若出现#VALUE!,检查身份证号是否有空格、字母或长度异常。
- 格式设置:提取的日期可设置单元格格式为“yyyy-mm-dd”以规范显示。
以上就是Excel中从身份证号提取出生日期的专业方法。推荐使用方法一,它兼容性最强;若追求效率且数据为18位,可用方法二;若不喜欢公式,方法三也是不错的选择。掌握这些技巧,能大幅提升数据处理效率。