Excel 身份证号提取出生日期?3 个函数组合

人事表里那一长串身份证号,出生日期、性别都藏在里面,一个个手动抄出来?几百行抄下来手都断了。其实 Excel 里几个函数一组合,身份证号里能提取的东西全能自动算出来。我帮行政同事做过一次工资表,把出生日期、年龄、性别一次提取完,她直呼白干了三年苦力。这篇把函数组合讲清楚。

一、先把身份证号"救"回来:别显示科学计数

身份证号有 18 位,直接输入 Excel 会被当成数字,显示成 3.02E+17 这种科学计数法,后几位还变成 0。解决办法是录入前就把单元格格式设为文本(右键→设置单元格格式→数字→文本),或者输入时先在前面加一个英文单引号 '。从别处粘贴进来的话,先把这一列设成文本,再用"分列"功能(第三步选文本)批量转成文本,就能保住完整号码。

如果你发现数据已经变成科学计数、尾号变成 0 了,那原始信息已经丢了,救不回来,只能找原来源重新拿。这也是为什么录入身份证号一定要用文本格式,这个坑栽一次就长记性了。

二、提取出生日期:MID 函数组合

18 位身份证号里,第 7 位到第 14 位是出生日期(YYYYMMDD)。用 MID 函数按位置截取:=MID(A2,7,8) 就能取出 8 位日期,比如"19900315"。如果想显示成"1990-03-15"的格式,可以嵌套 DATE 函数:=DATE(MID(A2,7,4),MID(A2,11,2),MID(A2,13,2)),把年月日分别截出来再拼成一个真正的日期,这样后续算年龄、排序日期都非常方便。

注意:15 位的旧身份证号和 18 位的新身份证号位置不一样(15 位的是第 7 位起 6 位数字),如果表里混着老号码,建议先用 =LEN(A2) 判断一下位数,再决定用哪个公式。不过现实中存量 15 位号越来越少,大多数表直接用 18 位公式就行。

三、提取性别:MOD 判断倒数第二位

18 位身份证号的第 17 位(倒数第二位)表示性别:奇数男、偶数女。用 =IF(MOD(MID(A2,17,1),2)=1,"男","女") 就能提取性别。拆开看就是:MID(A2,17,1) 取出第 17 位数字,MOD(...,2) 判断奇偶,奇数返回"男",否则返回"女"。

想顺便算年龄的话,可以用 =DATEDIF(出生日期单元格,TODAY(),"Y"),它返回两个日期之间的整年数,年龄就自动算出来了。把出生日期、性别、年龄三个函数写在一行,往下拖,整个表的个人信息全自动生成。

四、函数组合的排错思路

这些公式出错,八成是号码本身有问题:位数不对(多一位少一位)、有空格、中间混了字母、或者号码已经是科学计数了。排错建议:先用 =LEN(A2) 检查位数是否 18,用 =TRIM(A2) 清理空格,再用 =ISNUMBER(A2) 判断是不是被存成了数字。号码干净了,公式结果自然就对了。

还有个提醒:提取出来的信息属于个人敏感信息,这种表注意权限控制,别随意发给无关人员。数据安全和表格技巧要两手抓。

函数组合是 Excel 进阶的敲门砖,这类实用的函数玩法在办公软件技巧栏目里还有不少,比如条件统计、跨表匹配,学会了能省下大量手工时间。想系统提升表格处理能力,软件使用教程栏目也有完整的进阶路线。

写在最后:自查清单

  • [ ] 身份证号列已设为文本格式,没有显示科学计数
  • [ ] 确认号码长度都是 18 位,没有空格和杂字符
  • [ ] 用 MID 成功提取了出生日期(8 位)
  • [ ] 用 DATE 组合把日期拼成了真正的日期格式
  • [ ] 用 MOD 判断第 17 位奇偶提取了性别
  • [ ] 用 DATEDIF 计算了年龄,并核对了几个样本

从身份证号里提取信息,核心就三个函数:MID 取数、MOD 判断、DATEDIF 算龄。组合起来一行公式,几百人的信息几秒钟算完。先确保号码存成了文本、长度正确,公式基本不会出错。这种"小函数解决大问题"的玩法,正是 Excel 让人越用越顺的原因。

本站部分内容(文字、图片等)来自互联网或网友投稿,仅供学习参考。如发现本站内容侵犯您的合法权益,请联系我们核实处理,我们将在第一时间予以删除。