利用公式按指定间隔符提取数据

2018-05-30 12:04王志军
电脑知识与技术·经验技巧 2018年1期
关键词:数据源单元格空格

王志军

如图1所示,A列是很小一部分数据源,每个单元格的数据以符号“/”作为间隔符组合在一起,例如“亚洲/中国/江苏/苏州”,现在希望提取其中的部分数据,虽然可以使用“分列”提取数据,但由于这里的数据源并不规范,而且分列之后的整理也是相当的麻烦。其实,我们可以利用公式完成上述提取任务:

一、提取第一个间隔符“/”前的数据

选择B2单元格,在编辑栏输入公式“=LEFT(A2,FIND(”/”,A2)-1)”,这里的FIND函数用来发现“/”在A2单元格中首次出现的位置,接下来使用LEFT函数从左向右提取该长度的字符,公式执行之后向下拖拽或双击填充柄,即可得到图2所示的提取结果。

二、提取最后一个间隔符“/”后的数据

这个要求与前述要求正好相反,选择C2单元格,在编辑栏输入公式“=TRIM(RIGHT(SUBSTITUTE(A2,”/”,REPT(” ”,10 0》,10 0》”,“SUBSTITUTE(A2,”/”,REPT(“”,100》”这部分公式是将A2中的“/”替换为100个空格,接下来RIGHT函数从右边提取100个字符,这100个字符必然包括了最后一个“/”后的数据以及大部分的空格,最后使用TRIM函数清除多余的空格,图3即我们所需要的结果。

这里当然也可以使用“100”之外的其他大数据,主要作用是拉大数据之间的距离。

三、提取指定位数间隔符之间的数据

例如提取第2个“/”和第3个“/”之间的数据,选择D2单元格,在编辑栏输入公式“=TRIM(MID(SUBSTITUTE(A2,”/”,REPT(””,100》,100,100》”,这个公式列之后的后续处理,在B2单元格输入以下公式“=TRIM(MID(SUBSTITUTE($A2,”/”,REPT(””,100》,COLUMN(A1)*100-99,100》”,這里使用“COLUMN(A1)*100-99”取动态区间,随着公式的向右拖拽,依次提取第1-101-201个字符起的100个字符结果,最后依然使用TRIM函数清理空格。公式执行之后向右、向下拖拽填充柄,很快就可以得到图5所示的分列效果。

猜你喜欢
数据源单元格空格
合并单元格 公式巧录入
趣填成语
流水账分类统计巧实现
玩转方格
玩转方格
略知一二
图表中的交互 数据钻取还能这么用
智慧填数
基于Excel的照片查询系统开发与应用
再谈利用邮件合并功能批量生成准考证