在数据收集阶段,会有各种各样的数据,其中有一种文本数据:
用统一的符号分割类似这样的:
我们要把这样的数据变成可以只用Excel数据,该做怎样的处理呢?
有两种基本的方法:
一、分列法:
使用符号分列
二、公式法
使用数组公式直接出结果
下面就讲一种比较巧妙的拆分方法:
空格替代法拆分单词
第一步:使用SUBSTITUTE函数,用空格替代分号
=SUBSTITUTE(D1,";",REPT(" ",LEN(D1)))
这里要注意的是:
用整个字符串长度个数的空格替代一个分号
第二步:使用MID函数进行拆分
=MID(D$2,LEN(D$1)*(ROW(1:1)-1)+1,LEN(D$1))
以第一步的结果为参数,把这个多空格的字符串拆分成多个,含有空格的单词。
每个单词的长度是原字符串的长度。
第三步:使用TRIM函数去掉多余的空格
=TRIM(D3)
经过上面三个步骤,单词已经成功提取出来了
我们要的是:
=TRIM(MID(SUBSTITUTE(D1,";",REPT(" ",LEN(D1))),LEN(D1)*(ROW($1:$5)-1)+1,LEN(D1)))
上面这段公式,需要使用数组的组合键(CTRL+SHIFT+ENTER)
这个公式是一个多单元格数组公式,要先选定足够个数的一列单元格,输入公式,按三键,就可以输出结果了。
这个公式中不好理解的一段是
LEN(D1)*(ROW($1:$5)-1)+1
其中:ROW($1:$5)就是生成{1,2,3,4,5}这样一个数组
ROW($1:$5)-1就是{0,1,2,3,4}
这段公式的含义就是:从长度的倍数加一开始
赶紧试一下吧,其实数组公式也不是那么难懂。