需用分列+函数提取身份证信息:一、固定宽度分列得地址码、出生日期等;二、MID+DATE提出生日期;三、MOD+IF判性别;四、VLOOKUP匹配籍贯;五、新版可用TEXTBEFORE/TEXTAFTER等简化操作。

如果您在Excel中需要将一列包含完整身份证号码的数据拆分为出生日期、性别和籍贯等独立信息,则需利用文本分列功能结合函数提取特定字段。以下是实现该目标的具体操作步骤:
一、使用数据分列功能拆分固定长度字段
身份证号码为18位固定格式,前6位为地址码、第7–14位为出生日期、第15–17位为顺序码(其中第17位奇数表示男性、偶数表示女性)、第18位为校验码。通过“固定宽度”分列可快速切分地址码与出生日期部分。
1、选中包含身份证号码的整列数据(例如A列)。
2、点击【数据】选项卡 → 【分列】 → 选择【固定宽度】 → 点击【下一步】。
3、在预览窗口中,于第6位后、第14位后、第17位后分别点击添加分隔线,形成四段:0–6、6–14、14–17、17–18。
4、点击【下一步】,在列数据格式中,将第二段(出生日期)设为【日期(YMD)】,其余设为【文本】,点击【完成】。
二、用MID函数提取出生年月日
MID函数可从指定位置开始截取固定字符数,适用于从18位身份证中精准提取第7至第14位的8位出生日期,并进一步转换为标准日期格式。
1、在B1单元格输入公式:=DATE(MID(A1,7,4),MID(A1,11,2),MID(A1,13,2))。
2、按Enter确认,B1即显示对应身份证持有人的出生日期(如:1990/05/21)。
3、将B1公式向下填充至整列,覆盖所有身份证记录。
三、用IF与MOD函数判断性别
第17位数字决定性别,奇数为男、偶数为女。MOD函数可判断该位数字的奇偶性,再配合IF函数返回对应文字结果。
清理、标准化、验证并汇总杂乱的 Excel 工作簿。当 Codex 需要处理 `.xlsx`、`.xls`、`.xlsm` 或 `.csv` 格式的数据时使用,包括:统一表头格式、删除空白行与空白列、修剪文本内容、去重记录、检测数据质量问题、拆分或合并工作表、生成清洗后的工作簿,以及为业务电子表格生成审计摘要。
1、在C1单元格输入公式:=IF(MOD(MID(A1,17,1),2)=1,"男","女")。
2、按Enter确认,C1即显示该身份证对应的性别。
3、将C1公式向下填充至整列。
四、用VLOOKUP匹配前6位获取籍贯简称
身份证前6位为行政区划代码,需借助外部编码表(如“code_list.xlsx”中A列为6位代码、B列为省份简称)进行匹配。此方法依赖预先准备好的映射表。
1、确保编码表已打开,且第一行为标题行,A列含6位数字代码(如110000),B列含对应简称(如“北京”)。
2、在D1单元格输入公式:=VLOOKUP(--LEFT(A1,6),[code_list.xlsx]Sheet1!$A:$B,2,0)。
3、按Enter确认,D1即显示该身份证所属省级行政区简称。
4、将D1公式向下填充;若出现#N/A,说明该6位编码未在对照表中找到匹配项。
五、用TEXTBEFORE与TEXTAFTER函数(Excel 365/2021)快速分列
新版Excel支持动态数组函数,可绕过分列向导直接按位置切片,语法简洁且无需辅助列。TEXTAFTER用于取某字符后内容,TEXTBEFORE用于取某字符前内容,配合REPT与SUBSTITUTE可模拟位置截取。
1、在E1单元格输入公式:=TEXTAFTER(TEXTBEFORE(A1,"",18),"",6)(此式非标准用法,实际应改用MID;此处仅作示意——正确做法为:=MID(A1,7,8))。
2、在F1单元格输入公式:=IF(ISODD(--MID(A1,17,1)),"男","女")。
3、在G1单元格输入公式:=XLOOKUP(--LEFT(A1,2),{11;12;13;21;31;44;50;61},{"北京";"天津";"河北";"辽宁";"上海";"广东";"重庆";"陕西"},"")


















