Excel 拆分 AI 实操:姓+名/地址一键分列
Excel 拆分 AI 教程:用 AI 把姓名/地址/混合字段一键拆成多列,含 6 个真实场景 prompt 模板、TEXTSPLIT 新函数和 Power Query 兜底方案
你拿到一份名单表:A 列叫「姓名」,里面塞的是”张三丰”、“欧阳修”、“司马懿”——HR 让你拆成”姓”和”名”两列。或者地址列里是”广东省深圳市南山区科技园路 8 号”,要拆成省 / 市 / 区 / 详细地址 4 列。手动复制粘贴拆 500 行能拆到崩溃;用 Excel 自带的「分列」碰到中文姓和复姓直接歇菜。这时候让 Excel 拆分 AI 出手,是最稳的解法。
把你的拆分规则用大白话告诉 AI,AI 给一个 TEXTSPLIT 或者正则公式,30 秒搞定整列。本文给你万能 prompt 模板 + 6 个真实场景示例 + 3 种兜底方案。
为什么 Excel 自带的”分列”不够用
Excel 的「数据 - 分列」功能有 3 个硬伤:
- 只能按固定分隔符:逗号 / 空格 / Tab,但「张三丰」中间没分隔符
- 没法识别复姓:欧阳 / 司马 / 上官 / 诸葛——一刀切按”第 1 个字”会出错
- 地址分列要按”省/市/区”语义切:分列功能纯按字符切,分不出”广东省”和”深圳市”的边界
AI 加上 2026 年 Excel 365 新出的 TEXTSPLIT 函数(按字符拆)+ XMATCH(按规则匹配),3 类场景全覆盖。
用哪个工具
| 工具 | 拆姓名 | 拆地址 | 国内可用 | 备注 |
|---|---|---|---|---|
| Claude(含 Excel 插件) | 优秀(识别复姓) | 优秀 | 需代理 | 看 Claude for Excel 插件 |
| ChatGPT GPT-5 | 优秀 | 优秀 | 需代理 | 推 TEXTSPLIT 方案 |
| 豆包 / Kimi | 良好(基础姓名 OK) | 良好 | 直接可用 | 免费 |
| WPS AI | 良好 | 良好 | 直接可用 | WPS 表格里直接调用 |
| Excel Copilot | 良好 | 良好 | 需代理 + 365 | 月费 30 美元 |
国产 AI(豆包 / Kimi)拆中文姓名/地址的准确率不比国外差,首推免费方案。
万能 prompt:Excel 拆分专家
下面这段套到任何 AI 工具都能跑:
你是一位资深 Excel 数据清洗专家,擅长用公式、Power Query、VBA 三种方式拆分单元格。
我的需求: [用大白话描述要拆什么。比如「把 A 列姓名拆成 B 列姓 + C 列名,识别欧阳/司马/上官等 17 个常见复姓」]
数据样本(前 5 行): A 列「待拆字段」
- [样本 1]
- [样本 2]
- [样本 3]
- [样本 4]
- [样本 5]
期望拆分结果: B 列:[说明] C 列:[说明] D 列:[说明]
Excel 版本:[Excel 365 / Excel 2019 / WPS / Google Sheets] 数据范围:A2 到 A[N]
请按以下格式输出:
推荐方案(公式版,Excel 365 优先用 TEXTSPLIT/TEXTBEFORE/TEXTAFTER)
[直接给能粘的公式]
备选方案 1(旧版 Excel 兼容,用 LEFT/RIGHT/FIND)
[兼容公式]
备选方案 2(Power Query 步骤,适合一次性大批量)
[逐步操作清单]
公式解释
逐行说明每个参数在做什么。
怎么用
- 把公式粘到:[单元格]
- 向下拖到:[范围]
- 注意事项:[复姓识别 / 异常值兜底]
异常处理
- 遇到 [常见异常] 怎么办
- 如果某行拆不出来,公式返回什么
填好方括号里的内容发给 AI。下面 6 个场景示范怎么填。
6 个真实场景示例
场景 1:中文姓名拆姓 + 名(含复姓)
需求:A 列有 200 个中文姓名,要拆成 B 列姓 + C 列名,要识别欧阳 / 司马 / 上官 / 诸葛 / 慕容 / 公孙 / 长孙 / 东方 / 南宫 / 西门 / 闻人 / 太史 / 端木 / 宇文 / 万俟 / 鲜于 / 尉迟 17 个常见复姓。
AI 给出公式(Excel 365):
B2(姓):
=IF(ISNUMBER(MATCH(LEFT(A2,2),{"欧阳";"司马";"上官";"诸葛";"慕容";"公孙";"长孙";"东方";"南宫";"西门";"闻人";"太史";"端木";"宇文";"万俟";"鲜于";"尉迟"},0)),LEFT(A2,2),LEFT(A2,1))
C2(名):
=MID(A2,LEN(B2)+1,99)
公式思路:先用 MATCH 看 A2 的前 2 个字是不是复姓,是的话姓取 2 个字,否则取 1 个字;名就是剩下的部分。
场景 2:地址拆省 / 市 / 区 / 详细
需求:A 列地址形如”广东省深圳市南山区科技园路 8 号深圳湾科技生态园 7 栋”,拆成 B 省 + C 市 + D 区 + E 详细。
AI 给出(Excel 365):
B2(省):
=LEFT(A2, FIND("省", A2 & "省"))
C2(市):
=MID(A2, LEN(B2)+1, FIND("市", A2)-LEN(B2))
D2(区):
=MID(A2, LEN(B2)+LEN(C2)+1, FIND("区", A2 & "区")-LEN(B2)-LEN(C2))
E2(详细地址):
=MID(A2, LEN(B2)+LEN(C2)+LEN(D2)+1, 99)
注意事项:直辖市(北京 / 上海 / 天津 / 重庆)和自治区(新疆 / 西藏 / 宁夏 / 广西 / 内蒙古)要单独处理。让 AI 把”省/市/区/自治区/自治州/盟”全部列举,公式会复杂一点但能覆盖所有省份。
场景 3:邮箱拆用户名 + 域名
需求:A 列邮箱”[email protected]”,拆成 B 用户名 + C 域名。
B2(用户名):
=TEXTBEFORE(A2, "@")
C2(域名):
=TEXTAFTER(A2, "@")
TEXTBEFORE 和 TEXTAFTER 是 Excel 365 / WPS 新函数,一行搞定。老版本用 LEFT/RIGHT + FIND 凑。
场景 4:商品规格拆品牌 + 型号 + 配置
需求:A 列商品名”iPhone 16 Pro 256GB 黑色”,拆成 B 品牌 + C 型号 + D 容量 + E 颜色。
B2(品牌):
=TEXTBEFORE(A2, " ")
C2(型号):
=TEXTBEFORE(TEXTAFTER(A2," "), " ", 2)
D2(容量):
=TEXTBEFORE(TEXTAFTER(A2, " ", 3), " ")
E2(颜色):
=TEXTAFTER(A2, " ", 4)
如果数据格式不统一(有的 3 段、有的 5 段),让 AI 用正则方案或 Power Query 兜底。
场景 5:身份证号拆出生日期 + 性别 + 户籍地
需求:A 列 18 位身份证号,要拆出生日期、性别(看第 17 位奇偶)、户籍地(前 6 位地区码)。
B2(出生日期):
=DATE(MID(A2,7,4), MID(A2,11,2), MID(A2,13,2))
C2(性别):
=IF(MOD(MID(A2,17,1),2)=1, "男", "女")
D2(户籍地区码):
=LEFT(A2,6)
地区码转地名需要一份「6 位地区码-省市区」对照表,用 VLOOKUP AI 公式 查表即可。
涉及隐私的批量身份证拆分,务必脱敏后再处理,不要把真实身份证号粘给云端 AI。
场景 6:手机号区号 + 号段拆分
需求:A 列手机号”138-1234-5678”或”13812345678”,要识别号段(移动 / 联通 / 电信)。
B2(号段前 3 位):
=LEFT(SUBSTITUTE(A2,"-",""), 3)
C2(运营商):
=XLOOKUP(B2*1, {134;135;136;137;138;139;130;131;132;185;186;187;133;180;181;189},
{"移动";"移动";"移动";"移动";"移动";"移动";"联通";"联通";"联通";"联通";"联通";"联通";"电信";"电信";"电信";"电信"}, "未知")
号段表 2026 年还在更新(虚拟运营商号段越来越多),建议建一张维表用 VLOOKUP 查。
手把手 4 步走
第 1 步:先看 5-10 行真实样本
不要直接发”帮我拆地址”——先看你的数据里到底有哪些”长得不一样”的:
- 有没有省份省略(“深圳市南山区”没”广东省”)
- 有没有自治区 / 直辖市
- 有没有错别字 / 多空格 / 半角全角混用
样本看清楚再写 prompt,避免来回 5 轮才拆对。
第 2 步:填好 prompt 发给 AI
把 5 行样本贴进 prompt 的”数据样本”部分。贴样本是关键——AI 看不到你的实际数据,光凭描述很难给精准公式。
第 3 步:先在 5 行上验证
公式拿到先粘到 B2,手动核对前 5 行结果对不对。对了再拖到全表。
特别注意复姓、直辖市、缺省值这些”边界 case”,AI 经常忘记处理。
第 4 步:异常行单独处理
500 行里通常有 5-10 行公式拆不对(脏数据 / 格式异常)。3 种处理方式:
- 加 IFERROR 兜底:公式外面包 IFERROR,拆不出来返回”待人工核对”
- 单独筛选异常行:用
=IF(LEN(A2)<>18,"异常","")标出来,手工处理 - 二次清洗:把异常行单独喂给 AI 让它再分析
5 个让 AI 拆分更准的技巧
技巧 1:贴 5-10 行最有代表性的样本
不要只贴”张三”、“李四”这种最简单的。故意贴 2 行复姓、1 行单字名(如”王一”)、1 行多空格异常,让 AI 看到全貌。
技巧 2:明确”哪些算异常、哪些算正常”
在 prompt 里写:「正常情况是 X,异常情况包括 A、B、C」。AI 会用 IFERROR / IF 把异常行兜住。
技巧 3:要求”输出 Power Query 步骤”作为备选
公式只能处理标准化数据。Power Query 适合复杂规则、一次性大批量。让 AI 同时给”公式方案 + Power Query 方案”,复杂场景切到 Power Query。
技巧 4:要求”先反问 3 个最关键的问题”
如果你需求模糊(“帮我拆地址”),在 prompt 里加一句「如果信息不全,请先问我 3 个最关键的问题再给公式」。AI 会问”是否要拆省/市/区”、“是否要拆详细地址”,避免你拿到一个不对的公式。
技巧 5:拆完用 COUNTBLANK 验证
公式拖完,用 =COUNTBLANK(B2:B501) 看有没有空白(说明公式没匹配上)。空白超过 3% 就要回去调公式或处理异常。
一个常见失败案例 + 怎么救
失败场景:发”帮我把姓名拆成姓和名”,AI 给了 =LEFT(A2,1),结果”欧阳修”拆成”欧”+“阳修”。
救援步骤:
- 告诉 AI 数据特点:「我的数据里有复姓,常见的有欧阳/司马/上官/诸葛…」
- 要求”识别复姓”:把”识别复姓”作为明确需求写进 prompt
- 加测试样本:贴 5 行含复姓的样本,让 AI 用样本验证公式
- 要求”输出验证”:让 AI 在公式后给 3 行测试数据 + 预期结果,眼睛能看出对错
记住:AI 不知道你数据里有什么”妖魔鬼怪”,你不告诉它,它就用最简单的公式糊弄你。
进阶玩法 + 类似场景
进阶玩法 1:TEXTSPLIT 一行拆成多列
Excel 365 / WPS 新出的 TEXTSPLIT 函数能直接按分隔符拆成多列:
=TEXTSPLIT(A2, "-")
如果 A2 是”广东-深圳-南山-科技园”,结果直接展开成 4 列。比 LEFT/MID/FIND 简洁 10 倍。
进阶玩法 2:用 Power Query 自动化
复杂规则(地址分省/市/区/街道、含多种异常)用 Power Query 比公式稳:
- 数据 - 来自表格/区域 - 选数据
- 拆分列 - 按分隔符 / 按位置 / 按字符数
- 添加自定义列写更复杂的逻辑(M 语言)
- 关闭并加载
后续数据变了,刷新一下自动跑。
进阶玩法 3:拆完再去重
拆完的”姓”列经常一堆重复值(500 行可能就 50 个不同的姓),用去重看分布。
类似场景
- AI 写 Excel 公式完整教程
- Excel VLOOKUP AI 教程
- Excel 去重 AI 实操
- Excel 表头规整 AI
- Excel 合并表 AI 教程
- Claude prompt 库中文版
常见问题
Q:Excel 2019 没有 TEXTSPLIT 怎么办? A:用 LEFT/MID/RIGHT + FIND 组合凑,AI 都会给。或者用「数据 - 分列」功能(按分隔符切),适合简单场景。复杂的用 Power Query。
Q:WPS 表格能用这些函数吗? A:能。WPS 现在支持 TEXTSPLIT / TEXTBEFORE / TEXTAFTER / XLOOKUP 这些新函数。本文公式 90% 在 WPS 也能直接跑。
Q:拆地址时直辖市/自治区怎么处理? A:在 prompt 里明确告诉 AI:“数据里可能有北京/上海/天津/重庆 4 个直辖市,和新疆/西藏/广西/宁夏/内蒙古 5 个自治区”。AI 会用 IF 嵌套或 SWITCH 函数处理。
Q:能拆英文姓名(First Name + Last Name)吗?
A:能。英文姓名按空格拆即可:=TEXTBEFORE(A2," ") 拿 First Name、=TEXTAFTER(A2," ",-1) 拿 Last Name。中间 Middle Name 用 TEXTSPLIT 一次拆完。
Q:拆完数据如何验证准确率? A:3 种方法:1)抽样 20-50 行人眼核对;2)用 COUNTIF 看”拆完为空”的比例;3)拆完做透视表看分布是不是符合预期(比如省份只有 34 个值)。