做表格的日常,永远离不开文本替换:手机号脱敏、修改日期格式、替换错误文字、清理冗余字符……
说到替换,Excel里最核心的两个函数就是 REPLACE和SUBSTITUTE。REPLACE 看位置,SUBSTITUTE 看内容。
今天一文讲透两者的用法、区别、适用场景和避坑技巧,看完从此替换数据零出错!
01 核心本质:一字之差,逻辑完全不同
这是两个函数最根本的区别,也是所有用法的核心,建议直接记死:
REPLACE:按位置替换。不管内容是什么,只看「第几个字符、替换几位」,精准覆盖固定位置的文本。
SUBSTITUTE:按内容替换。不管文本在哪个位置,只要匹配到指定内容,就统一替换,主打精准匹配文字。
简单类比:
REPLACE:相当于「按坐标改字」,第3-6个字,不管是什么,直接换掉。
SUBSTITUTE:相当于「按文字改字」,全文所有的“张三”,全部改成“李四”。
02 语法拆解:参数一目了然
REPLACE 函数(位置替换)
语法:=REPLACE(原文本, 开始位置, 替换字符数, 新文本)
参数解读:
原文本:需要修改的单元格/文字
开始位置:从第几个字符开始替换
替换字符数:一共替换多少个字符
新文本:最终替换成的内容
SUBSTITUTE 函数(内容替换)
语法:=SUBSTITUTE(原文本, 旧内容, 新内容, [替换第几个])
参数解读:
原文本:需要修改的单元格/文字
旧内容:想要被替换掉的目标文字
新内容:替换后的新文字
可选参数:指定替换第N个匹配内容,省略则全部替换
03 实操案例:场景化看懂用法
理论太抽象,3个高频工作场景,手把手教你选对函数。
场景一:手机号脱敏(首选REPLACE)
需求:将 13812345678 改为 138****5678
思路:手机号前3位、后4位固定,中间4位是固定位置,适合用位置替换的 REPLACE。
公式:=REPLACE(A1,4,4,"****")
解析:从第4个字符开始,替换4个字符,统一换成星号。
❌ 不适合用 SUBSTITUTE:中间数字不固定,无法精准匹配内容,根本无法实现脱敏效果。
场景二:统一替换文本关键词(首选SUBSTITUTE)
需求:表格中所有「2025年度」替换为「2026年度」,文本位置不固定。
思路:目标明确是替换指定内容,不管文字在单元格的哪个位置。
公式:=SUBSTITUTE(A1,"2025年度","2026年度")
进阶用法:只替换第2个匹配内容
公式:=SUBSTITUTE(A1,"2025","2026",2)
❌ 不适合用 REPLACE:文本位置不固定,无法确定统一的替换坐标,极易改错内容。
场景三:日期格式修改
需求:纯数字日期 20260627 改为 2026-06-27
用 REPLACE 嵌套实现(固定位置插入符号):
公式:=REPLACE(REPLACE(A1,5,0,"-"),8,0,"-")
巧妙点:替换字符数填0,可在指定位置插入新内容,不删除原有字符。
05 高频避坑指南(新手必看)
很多公式出错,都是踩了这几个隐形坑!
坑1:搞反适用场景
内容不确定、位置固定→ 强行用 SUBSTITUTE,匹配不到内容,替换无效。
位置不确定、内容固定→ 强行用 REPLACE,会误改其他正常字符。
坑2:SUBSTITUTE 默认全部替换
不写第4个参数,会替换单元格中所有匹配内容,需要局部替换必须加序号(1/2/3)。
坑3:REPLACE 位置参数越界报错
设置的开始位置超过文本总长度,不会报错,但会在文本末尾追加新内容;参数为负数会直接返回错误值。
坑4:两者均不支持通配符
想要模糊替换,不能用 *、? 通配符,需要搭配 IF、MID 等函数嵌套实现。
06 终极选型口诀
最后送给大家一句万能口诀,再也不用纠结:
固定位置改内容,直接用 REPLACE;
固定内容改全文,首选 SUBSTITUTE。
写在最后
REPLACE 和 SUBSTITUTE 没有优劣之分,只有适配场景的区别。搞懂「位置替换」和「内容替换」的核心逻辑,就能告别盲目套公式,大幅提升表格处理效率。
收藏这篇推文,下次做数据替换,直接对照即用!