EXCEL中使用SUBSTITUTE替换公式一例

本文介绍了如何使用Excel公式解决一个特定问题:将含有多个破折号的代码转换为只保留首个破折号的格式。通过FIND、MID和SUBSTITUTE函数的组合应用,实现了在保持原始信息的基础上,删除多余的破折号。如果单元格A2中的代码为'K008-M01-003-002',公式会将其转换为'K008-M01003002'。该方法适用于处理类似格式的字符串,即使没有破折号也能够正确处理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有朋友公司系统升级,需要将原旧代码变更一下,如旧代码为“K008-M01-003-002”需变更为只有一个“-”符号的新代码“K008-M01003002”,旧代码“-”符号可能有三个也可能有两个,但只要保留前面一个,后面的“-”符号去除。

这个需求很容易解决,即1.找到第一个“-”符;2.保留“-”符前的字串;3.“-”符后面的字串将“-”替换成空;4.如果没有“-”符则继续使用旧名称。公式如下:

=IF(ISERROR(FIND("-",A2)),A2,MID(A2,1,(FIND("-",A2)))&SUBSTITUTE(MID(A2,FIND("-",A2)+1,3000),"-",""))

解释:

FIND("-",A2):找到第一个“-”符所在的位置,如果没有“-”符则ISERROR为True。

MID(A2,起始位置,结尾位置):获得区间字串。

SUBSTITUTE(字串,"-",""):替代字串中的“-”字符为空。

公式向下填充后显示非常正确。EXCEL中的公式有很多,但是常用的不会很多,考验的只是对公式的灵活应用、组合应用,有了灵活应用、组合应用的心思技巧,某个公式记不起来百度一下用起来也非常美妙。

如果你有更方便的解决方法,敬请指教哦。本文来自于:发现数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

数据挖掘小道长

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值