Excel公式提取最后一个分隔符右边的数据

点击下方 ↓ 关注,每天免费看Excel专业教程

置顶公众号设为星标 ↑ 才能每天及时收到推送

个人微信号 | (ID:LiRuiExcel520)
微信服务号 | 跟李锐学Excel(ID:LiRuiExcel)
微信公众号 | Excel函数与公式(ID:ExcelLiRui)

最近在学员群里连续接到一些关于按条件提取字符的提问,其中不乏一些具备一定基础的学员,还是无法掌握到全面的数据提取技术。

所以今天专门写一篇进阶版的Excel公式提取教程,简单的数据提取技术,本文不再赘述,本文的目的主要是帮助有一定基础的学员归集并拓展思路,能在各种场景下灵活运用之前学过的Excel函数,解决手头实际问题。

先来看个简单示例,左列是一大串存放路径,要求你从中提取最后一个\右边的课程名称,你想想看,自己会写公式吗?

下面结合案例展开讲解,给出3种不同思路和方法。

没时间一气看完的同学可以分享到朋友圈给自己备份一份。

一、方法1

提醒:方向第一,努力第二,无论解决任何问题,都要先捋顺思路再开始动手。

先找到数据中的规律再根据这个规律确定最适合的方法。

案例场景如下(右侧黄色区域输入公式)

=RIGHT(A2,LEN(A2)-IFERROR(FIND("@",SUBSTITUTE(A2,"\","@",LEN(A2)-LEN(SUBSTITUTE(A2,"\",)))),0))

思路解析:

1、先确定路径中一共有几个\,利用len和SUBSTITUTE函数实现;

2、再将最后一个\替换为一个不常见字符,比如@,利用SUBSTITUTE函数实现;

3、利用find函数提取@出现的位置,也就是最后一个\出现的位置;

4、用全部长度减去上一步的位置,即可得到要提取的课程名称的长度;

5、最后利用right函数从右侧按前两步得到的长度进行提取,即可成功截取到课程名称。

明确这个思路后,其中每一步并不复杂,只要掌握这几个文本函数的基础用法即可轻松应对,这些函数都是二期特训营的函数初级班里面重点讲过的常用函数,此处不再赘述它们的基础用法了。

回到正题,理解这种解决方案后不必窃喜,后面还有其他方法,最具含金量的重点在最后。

二、方法2

理解了方法1,再来看方法2的公式,应该很好理解了。

案例场景如下(右侧黄色区域输入公式)

=MID(A2,IFERROR(FIND("@",SUBSTITUTE(A2,"\","@",LEN(A2)-LEN(SUBSTITUTE(A2,"\",)))),0)+1,99)

思路解析:

1、思路架构和方法1有很多相似之处,所以相同的地方不再赘述了;

2、区别在于将right替换为了mid函数,剩余的自己开动脑筋吧,相信你能理解这个公式,不理解的再把方法1解析过程细读一遍;

其实,这两种公式还可以进一步简化,只需要你改变一下思路,下面会告诉你。

三、方法3

前面两种思路,虽然公式不同,但都是先定位到最后一个\的位置,再去决定用哪个文本函数,截取多少长度的思路,要想简化这种思路,可以进一步观察数据特性。

通过观察可以发现,我们要的课程名称都在数据最末端,也就是从右侧截取多少长度的问题,这个长度虽然不同,但是可以利用替换和重复函数将其转换为空格+课程名称,截取到包含完整课程名称的字符串后,再批量清除空格的思路一步实现。

案例场景如下(右侧黄色区域输入公式)

=TRIM(RIGHT(SUBSTITUTE(A2,"\",REPT(" ",99)),99))

思路解析:

1、利用SUBSTITUTE函数将所有\替换为99个空格;

2、利用rept函数将空格重复99次,快速生成99个空格;

3、从右侧提取99位,其中包含若干个空格+课程名称;

4、利用trim批量清除多余的空格,得到课程名称。

含金量在于:这套Excel组合公式并非只适用于当前案例,它可以适合从各种多分隔符字符串中提取最后一个分隔符右边的字符。

根据实际情况,将分隔符替换为需要的符号即可,上述万能公式套用结构可以灵活扩展。

(0)

相关推荐