HI,大家好,我是汪站长。
近段时间WPS出了个新工作表函数:TEXTSPLIT,主要作用是按照指定分隔符拆分数据。很多朋友认为它只是基础操作里的「分列」功能的函数版,就有点小瞧它,事实上,它远比大家想象中的灵活和强大。打个响指,今天用几个常见的问题案例,让大家瞧瞧它的厉害。
1 基础用法(1)
TEXTSPLIT函数最基础的用法,是实现类似「分列」功能,将数据按指定分隔符拆成多列。
如下图所示的A列数据,包含了姓名、性别、爱好等信息,彼此之间使用分隔符”-“相连,现在需要拆分成三列数据。
参考公式如下:
=TEXTSPLIT(A1,"-")
第1参数指定源字符串,第2参数指定按列拆分的分隔符,本例中分隔符是”-“,用它将A1的数据拆分为多列。
2 基础用法(2)
很多新手朋友看完了上面的案例,就给TEXTSPLIT留下了一个「分列」功能函数版的粗浅印象,就挥挥手说拜拜了。
但关于TEXTSPLIT的故事其实只是刚刚开始
如下图所示的A列数据,还是包含了姓名、性别、爱好等信息,但彼此之间的分隔符很杂乱,有”/”、”@”、”-“等,现在还是需要拆分成三列数据。
参考公式如下:
=TEXTSPLIT(A1,{"-","/","@"})
TEXTSPLIT函数的第2/3参数可以使用数组的形式,指定多个分隔符,你看这是不是就比分列方便多了?
3 基础用法(3)
分列只能实现按列拆分数据,而TEXTSPLIT函数不但可以按列拆分,还可以按行拆分。
如下图所示的数据,需要将A2单元格的数据按照分隔符”-“拆分成多行。
参考公式如下:
=TEXTSPLIT(A1,,"-")
需要注意的是,上述TEXTSPLIT函数留白了第2参数,将第3参数设置为”-“,表示按行方向拆分数据……。
这个第3参数的设置是不是乍看起来好像不实用?往下看,马上就让它实用。
4 拆为二维表格
如下图所示,A1单元格是个混合文本,包含了多行记录,每行记录之间使用分号”;”分隔,每行记录内部又使用了”-“和”@”分隔。现在需要拆分成多行多列的表格结构。
参考公式如下:
=TEXTSPLIT(A1,{"-","@"},";",1,1,"数据缺失")
TEXTSPLIT函数先按第3参数指定的分隔符”;”,将数据拆分为多行,拆分结果如下图所示。
然后再按照第2参数指定的分隔符{“-“,”@”},将上述运算结果拆分为多列。
公式中还包含了第4、5、6参数。分别表示忽略空值、不区分字母大小写、以及当出现异常值时转换为指定值”数据缺失”。
5 按数据类型拆分数据
打个响指,下面进入开脑洞的时刻。
「分列」功能是按照分隔符拆分数据,而TEXTSPLIT函数还可以按照数据类型做拆分。
如下图所示,A列数据包含了人名和随礼份子钱,这账也不知道是谁记的,说乱很乱,说整齐也确实非常有规律,都是人名+数值的结构。
现在需要将人名提取出来,拆成多列结构。
=TEXTSPLIT(A2,ROW($1:$10)-1,,1)
=TEXTSPLIT(A2,
TEXTSPLIT(A2,ROW($1:$10)-1,,1),
,1)
=TEXTSPLIT(A2,
CHAR(ROW($65:$122)),,1)
然后,再嵌套一个TEXTSPLIT函数就可以提取英文名:
=TEXTSPLIT(A2,
TEXTSPLIT(A2,CHAR(ROW($65:$122)),,1),
,1)
……
以为这就完了?在你眼里我是这么善良的人吗
最后给大家留一道思考题,将下图所示A列的数据转换为B:F列的结构(你别动别…动PowerQuery)。
盖木欧瓦,下期再见。
|
|
打开微信扫一扫,Office自学网
专注分享软件安装和视频教程,让你一号在手,办公无忧!