商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 软件教程 > MID函数如何从中间提取身份证号生日?_文本截取【应用】

MID函数如何从中间提取身份证号生日?_文本截取【应用】

  发布于2026-06-14 阅读(0)

扫一扫,手机访问

从一串18位的身份证号码里快速准确地提取出生日期,是很多办公场景下的常见需求。号码中第7到第14位这8个数字,就是关键的出生年月日信息。掌握下面几种方法,你就能轻松搞定这个问题。

MID函数如何从中间提取身份证号生日?_文本截取【应用】

一、使用MID函数直接截取

最直接的方法莫过于使用MID函数。这个函数就像一把精准的“文本手术刀”,可以从指定位置开始,截取出你需要的字符片段。对于身份证号,起始位置固定为第7位,需要截取的长度固定为8位。

操作很简单:在目标单元格输入公式 =MID(A1,7,8) ,其中A1是存放身份证号的单元格。按下回车,一串如“19950328”的8位数字就出来了。

不过,这串数字看起来还不够直观。如果想让它变成Excel能识别的真正日期,以便后续进行年龄计算或排序,可以嵌套DATE函数:=DATE(LEFT(MID(A1,7,8),4), MID(MID(A1,7,8),5,2), RIGHT(MID(A1,7,8),2))。这个公式会分别提取出年、月、日并组合成标准日期。

二、结合TEXT函数生成带分隔符的日期显示

如果目的只是为了让人看得清楚,而不需要做日期运算,那么TEXT函数是更好的选择。它能把提取出的数字格式化成我们熟悉的样式。

试试这个公式:=TEXT(MID(A1,7,8),"0000-00-00")。回车后,显示结果就会变成“1995-03-28”这种带分隔符的形式,报表或打印出来会非常美观。

需要注意的是,这样得到的结果本质上还是一个文本字符串,Excel并不会把它当作真正的日期值来处理。

三、使用SUBSTITUTE与MID组合处理含空格或符号的身份证号

实际工作中,我们拿到的数据可能没那么“干净”。身份证号里有时会夹杂着空格、短横线“-”,或者其他符号。这时候直接使用MID函数,可能会因为起始位置计算错误而得到错误结果。

解决办法是先清理,再截取。可以用这个组合公式:=MID(SUBSTITUTE(SUBSTITUTE(A1,"-","")," ",""),7,8)。它先用SUBSTITUTE函数把短横线和空格都替换掉(即删除),然后再用MID函数从清理后的文本第7位开始截取。

如果数据中还有其他千奇百怪的干扰字符,那就继续嵌套SUBSTITUTE,或者考虑使用更高版本的Excel中的REGEXREPLACE函数(如果支持的话),用正则表达式来一次性清理所有非数字字符。

四、通过数据分列功能替代函数提取

对于不太熟悉公式的朋友,Excel自带的“分列”功能是个图形化的好帮手。它不需要写任何代码,通过鼠标点击就能完成分割。

具体步骤是:选中身份证号所在列,依次点击【数据】→【分列】。在向导中,选择【固定宽度】,点击下一步。这时会进入一个预览界面,你需要在标尺上第6位数字之后(也就是第7位数字之前)点击一下,建立第一条分列线;接着在第14位数字之后再点击一下,建立第二条分列线。这样就把身份证号分成了前6位、中间8位、后面4位三部分。

继续点击下一步,在列数据格式设置中,将中间这一列设置为【文本】,最后点击完成。原来的一列数据就被分成了三列,中间那一列就是你想要的8位出生日期,可以直接复制使用。

本文转载于:https://www.php.cn/faq/2459803.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

产品推荐

热门关注