ARTICLE · 1211973
Excel 文本处理函数:拆姓名、清手机号、身份证脱敏
Excel 文本处理函数:拆姓名、清手机号、身份证脱敏
从一列混排的数据里把姓氏拆出来、把手机号里多出来的空格和 86 去掉、把身份证中间八位变成星号,这些活靠手删要删到眼花。文本函数就是干这个的,十几个记牢,脏数据几分钟就能洗干净。
日常表格里最折磨人的往往不是算数,是一列不规矩的文字:姓名和部门挤在一起,手机号有的带区号有的带空格,身份证一长串看着就乱。把它们拆开、补齐、替换、去掉多余空格,靠的不是技巧,是几个固定函数。这一篇把常用的 14 个文本函数一次讲清楚,每个都配上能直接抄的写法。
用之前记两条前提。一是函数里的括号、逗号、引号全在英文状态下打,中文符号 Excel 认不出来;二是文本和日期这类不是单元格引用的内容,要加双引号,比如
"男"、"********"。
从两边和中间截取字符
这三个是文本处理的底座,身份证、手机号、订单号这种"位置固定"的内容全靠它们。

LEFT 从左边取
语法 =LEFT(文本, 取几位),从最左边开始数。
• 单元格 A2 是 2018_09,=LEFT(A2,4) 得到 2018,取出前面的年份。
• 取出的是文本,想当数字用就补个加零:=LEFT(A2,4)+0 得到数值 2018。
RIGHT 从右边取
语法 =RIGHT(文本, 取几位),从最右边往回数。
• A2 是工号 9789279,=RIGHT(A2,5) 得到后五位 89279。
• 手机号取后四位:=RIGHT(A2,4)。
MID 从中间取
语法 =MID(文本, 从第几位开始, 取几位),两端都不靠时用它的。
• A2 是身份证 110326199003152345,出生年月日在第 7 到 14 位,=MID(A2,7,8) 得到 19900315。
• 配合其他函数还能把这段再拆成年月:=MID(A2,7,4)&"年"。
身份证判断男女有个现成套路:第 17 位是偶数就是女。
=IF(MOD(MID(A2,17,1),2)=0,"女","男")。这里用 MID 取出第 17 位,MOD 判断奇偶,IF 给结果,三个函数串起来一步到位。
数字符、查位置

LEN 数长度
语法 =LEN(文本),返回字符个数,一个汉字算一个。
• 校验手机号是不是 11 位:=IF(LEN(A2)=11,"正确","位数不对")。
• 想连字节一起算用 LENB,一个汉字按 2 个字节计,=LENB(A2)。
FIND 与 SEARCH 找位置
两个都是"找某个字符第一次出现的位置",区别在 FIND 区分大小写,SEARCH 不区分。
语法 =FIND(要找的字符, 在哪个文本里, [从第几位开始找]),SEARCH 同结构。
• A2 是 Li, Bingbing,=FIND("in",A2) 返回 5(第一个 in 从第 5 位起)。
• 找不到大写就报错,不区分大小写时改用 =SEARCH("bing",A2),返回 4。
• 第三个参数能指定从哪开始找,=FIND("n",A2,6) 从第 6 位起找下一个 n。
改大小写

•=LOWER(A2) 全转小写:Zhang, SAN 变成 zhang, san。
•=UPPER(A2) 全转大写:变成 ZHANG, SAN。
•=PROPER(A2) 每个英文单词首字母大写、其余小写:变成 Zhang, San,适合整理人名。
这三个只动英文字母,中文原样保留。
重复、替换与删除空格

REPT 重复多次
语法 =REPT(内容, 重复次数)。
• A2 是 加油,=REPT(A2,6) 得到 加油加油加油加油加油加油。
• 也能做简易进度条:=REPT("█",5)&REPT("░",5),实心格加空心格。
REPLACE 按位置替换
语法 =REPLACE(文本, 从第几位开始, 替换几位, 换成什么),靠位置定位。
• 身份证 A2 是 110326199003152345,中间 8 位出生日期要打码:=REPLACE(A2,7,8,"********"),从第 7 位起替换 8 位。
SUBSTITUTE 按内容替换
语法 =SUBSTITUTE(文本, 要找的内容, 换成什么, [只换第几个]),靠内容定位,和 REPLACE 一个按位置一个按内容。
• A2 里所有的 9 换成 :=SUBSTITUTE(A2,"9","")。
• 只换第 2 个 9:=SUBSTITUTE(A2,"9","*",2)。
• 把手机号里的空格和 +86 去掉,只留 11 位裸号,可以先 SUBSTITUTE(A2," ","") 去空格,再处理前缀。
REPLACE 和 SUBSTITUTE 常被记混。记法很简单,REPLACE 数"第几位",SUBSTITUTE 认"哪个字"。身份证按位数打码用 REPLACE,把全文所有横杠换成斜杠用 SUBSTITUTE。
TRIM 删多余空格
语法 =TRIM(文本),去掉首尾空格、把中间连续空格压成一个。
• A2 是 " He llo ",=TRIM(A2) 变成 "He llo"。从系统导出的数据末尾常带看不见的空格,TRIM 一清就好。
TEXT 把数字日期变格式

语法 =TEXT(值, "格式代码"),格式代码要加引号。
• 日期转文字:=TEXT(A2,"yyyy-mm-dd") 得到 2026-07-02。
• 显示星期:=TEXT(TODAY(),"aaaa") 得到 星期一。
• 保留两位小数:=TEXT(A2,"0.00");转百分比:=TEXT(A2,"0%")。
• 加货币符号:=TEXT(A2,"¥#,##0.00")。
TEXT 的结果是文本,不再是能继续算的数值,用来做展示或拼接最合适。
一张表记住这 14 个
=LEFT(A2,4) | ||
=RIGHT(A2,4) | ||
=MID(A2,7,8) | ||
=LEN(A2) | ||
=LOWER(A2) | ||
=UPPER(A2) | ||
=PROPER(A2) | ||
=FIND("in",A2) | ||
=SEARCH("bing",A2) | ||
=REPT(A2,6) | ||
=REPLACE(A2,7,8,"****") | ||
=SUBSTITUTE(A2,"9","*") | ||
=TRIM(A2) | ||
=TEXT(A2,"yyyy-mm") |
几个容易踩的坑
+0 或 *1 转成数值 | ||
感谢阅读,欢迎关注我的公众号

扫码关注「Hai分享」,获取更多干货内容















































































