大数跨境
0
0

一个按间隔符提取数据的必备公式

一个按间隔符提取数据的必备公式 数据分析就用Excel
2020-08-06
0
导读:…………
HI,大家好,我是星光。今天分享的数据处理技巧是按指定间隔符整理提取数据……
什么意思呢,举个例子……
如下图所示,A列是数据源,每个单元格的数据以符号“/”作为间隔组合在一起,例如:“看见/星光/Excel”。


1



提取第一个间隔符"/"前的数据,如下图所示的B列计算结果。
公式:
=LEFT(A2,FIND("/",A2)-1)
FIND函数发现"/"在A2单元格中首次出现的位置,然后使用LEFT函数从左向右提取该长度的字符,即为结果。


2



 提取最后一个间隔符"/"后的数据。如下图所示的B列计算结果。
这个问题和第一个问题刚好相反……
公式:
=TRIM(RIGHT(SUBSTITUTE(A2,"/",REPT(" ",100)),100))
SUBSTITUTE(A2,"/",REPT(" ",100)),这部分公式将A2中的"/"替换为100个空格,然后RIGHT函数从右边提取100个字符,这100个字符必然包括了最后一个"/"后的数据以及大部分的空格,因此最后用TRIM函数清除空格即为结果。


3



提取指定位数间隔符之间的数据,例如提取第2个"/"和第3个"/"之间的数据。
公式:
=TRIM(MID(SUBSTITUTE(A2,"/",REPT(" ",100)),100,100))
和第2个公式有些相似,依然先使用SUBSTITUTE函数,将A2单元格中的"/"替换为100个空格,这样就将不同的值划分到了由空格间隔而成的多个小房子里,再使用MID函数从指定区段取值,最后使用TRIM函数消除空格。


4



按指定间隔符将数据拆分到多个单元格,类似于【分列】功能。
B2输入以下公式,向右向下复制填充至B2:E5区域,即可得出结果:
=TRIM(MID(SUBSTITUTE($A2,"/",REPT(" ",100)),COLUMN(A1)*100-99,100))

该公式和第3个公式类似,只是使用COLUMN(A1)*100-99取动态区间,随着公式的向右拖动,依次提取第1~101~201个字符起的100个字符结果,最后依然使用TRIM函数清理空格。


5

小贴士


TRIM+MID+SUBSTITUTE是一个非常经典的字符串处理函数套路,尤其擅长与处理间隔符的问题,如果不能一次性掌握,也建议收藏备用哦~另外,有些朋友可能会想,这事完全可以用快速填充或者分列功能,没必要非函数不可。这种想法有点儿道理,但是函数和基础操作的区别在于,函数处理问题更加自动化、模块化;它的计算结果可以直接嵌套在其它函数中继续使用,避免手工反复操作。

数据分析就用Excel

【声明】内容源于网络
0
0
数据分析就用Excel
Excel易用宝专属公众号,分享Excel操作技巧、函数、公式、透视表、图表、VBA及Power BI教程,助您轻松提高办公效率,搞定数据分析!
内容 855
粉丝 0
数据分析就用Excel Excel易用宝专属公众号,分享Excel操作技巧、函数、公式、透视表、图表、VBA及Power BI教程,助您轻松提高办公效率,搞定数据分析!
总阅读33
粉丝0
内容855