【WPS表格案例】数据按照字符分离的一种思路
创作者俱乐部成员
| 📢 | 大家好!今天是2月的第一天,预计除夕前还会更新一两篇帖子,然后就进入春节八天假期模式啦,明天和后天分别是北方小年和南方小年,在这里提前祝大家小年快乐! 这一次给大家带来的案例其实是老生常谈的内容了。有这样一组数据,它是由品类和规格组成的连续的字符串,现在我想要在这个连续的字符串中分别提取品类和规格的信息,那么该如何进行操作呢?相信大家内心里已经有很多种方法来实现这个功能了,本篇文章使用了最近更新的函数,希望能够给大家带来一些启发和思考~ |
- 案例介绍
有这样的一组数据,A列是由品类和规格组成的连续的字符串,现在我们需要分别提取出品类、规格的信息,将其放在B列和C列对应的位置,我们该如何实现呢?相信大家心里已经有很多种想法了,本文给大家提供一种使用最近更新的动态数组函数的解决方法,供大家学习参考~
品类、规格提取
- 解决方案
先告诉大家我们使用的主要函数为:MID、LET、HSTACK、TEXTSPLIT函数。
大家可能对LET函数还不是那么熟悉,先给大家简要介绍一下LET函数是什么,以及LET函数中各个参数的含义。LET函数可以用来存储某个函数运算的结果,然后将这个结果以简洁的形式应用到其他函数的表达式中,达到简化运算、提升效率、便于阅读的目的。
| 📌 | LET函数的语法: LET函数语法 参数解释: 【名称1】要分配的第一个名称,名称必须以字母开头,不能是公式的输出结果,也不能与范围语法冲突; 【名称值1】分配给名称1的值; 【计算或名称2】可以选择下面任意一项:
|
一个简单的例子:
| 💡 | =LET(x,1,x+1) |
这个结果将1赋值给了x这个名称,然后执行运算x+1,最后得到的结果为2.
有了前置知识之后,我们就可以利用这些已知的内容来解决问题了。
我们点击B2单元格,看一下函数表达式:
| 💡 | =LET(t,MID(A2,1,MIN(IFERROR(FIND(SEQUENCE(10)-1,A2),99))-1),HSTACK(t,TEXTSPLIT(A2,t,,TRUE))) |
B2单元格对应的表达式
这个表达式乍一看稍微长了一点,但实际上非常好理解。我们用逐层深入的方式为大家讲清楚。
首先我们令【名称1】为t,然后我们将MID函数的运算结果赋给t,这样在【计算】部分,我们就可以用字母t来指代MID函数的运算结果,简化我们的函数表达式。
接下来,我们看一下MID函数执行了怎么样的运算:
MID函数的运算结果
我们利用MID函数来提取品类的字符,【要提取的字符串】填写A2单元格,提取字符的个数是1,字符个数中的表达式的基本思想是,首先利用FIND函数寻找A2单元格中所有的数字(0~9)的位置,如果找到了,则返回数字所在的位置,如果没找到,则返回#VALUE!错误。为了避免错误对计算的影响,我们利用IFERROR函数将错误值调整为一个较大的数字,在这里我使用了99,只要数字相对提取的内容来说足够大即可。此时我们会得到一个记录着数字位置和99的数组:
IFERROR函数的执行结果(A2单元格)
接下来使用MIN函数,提取出这个数组中的最小值,也就是A列单元格内容中第一次出现数字的位置。用A2单元格可能看不出来,我们看一下A3单元格的执行结果:
IFERROR函数的执行结果(A3单元格)
此时我们发现,函数找到了0的位置和5的位置。A3单元格中第一个出现的数字为5,在数组的运算结果中对应的是4,那么我们利用MIN函数找这个数组的最小值,然后将这个最小值减1,即可得到需要提取的字符个数,此时就可以将【品类】一列的内容提取出来了。
我们在第1步中将MID函数运算的结果命名为t,此时字母t指代MID函数的一长串表达式,我们在【计算】过程中可以直接利用t来参与运算,起到简化运算的作用。
我们既然把【品类】提取出来了,那么后面的规格提取方式就有很多了。在这里我们利用一下之前的字母t,结合TEXTSPLIT函数将其分离出来。以A2单元格为例,TEXTSPLIT函数的第一个参数为A2单元格,第二个参数【按列拆分】直接填写t即可,我们直接利用B列生成的结果作为分割依据,这样就可以把文字之后的【规格】分离出来了,第三个参数可以空着,为了避免空单元格出现,我们将【是否忽略空单元格】填写TRUE或者1,这样即可得到分离出来的规格。
TEXTSPLIT函数的运算结果
有些人可能会疑惑,为什么图片里的MID函数部分没有用t指代,因为刚才的自定义名称只能作用在LET函数里面,一旦脱离了LET函数,是起不到指代作用的。
最后利用HSTACK函数将t和TEXTSPLIT函数的结果连接在一起,即可得到A2单元格的分离结果,这时我们点击B2单元格,双击右下角的【填充柄】即可完成其他单元格的填写。
- 总结
这个案例其实是为了利用动态数组的新函数,刻意想出来的一种解决办法。事实上,如果有更简洁的方法,当然可以在这里使用,毕竟不管黑猫白猫,只要能抓到老鼠就是好猫嘛。如果大家有更简单的解决办法,欢迎大家随时在评论区留言哦!
练习文档下载:
下载方法:点击上方链接,然后点击左上角的菜单栏,点击【下载】即可学习使用。
练习文档下载方式
如果大家在阅读时有所收获,那么大家可以点击小红心❤️和收藏⭐~
如果大家也有自己的头脑风暴,那么不要吝啬自己的评论💬和转发✅哦~
WPS表格系列文章指路:
WPS寻令官
创作者俱乐部成员