当文本、字母或数字不等长且没有分隔符号时,无法使用分列功能对其进行分隔,这种时候可以用到以下分隔方法,当然,初级方法是有限制的,那就是只能分隔文字与字母或文字与阿拉伯数字,但无法分离字母与数字,而且文字、字母或数字必须连续。
用到的原理是文字是两个字节长度,而字母与数字均是一个字节长度,所以字母和数字无法用此方法分离。
文本在前,字母/数字在后
例如:
陌上花开缓缓归121
学习进阶dawsondx
拉开时间12345
这种情况下分离的函数为:=LEFT(B2,LENB(B2)-LEN(B2))
如下图所示:
图1 分离函数效果示意图1首先分别介绍下LEN函数以及LENB函数:
简单来说就是,LEN函数是计算文本字符串的字符个数,而LENB函数是计算文本字符串的字节个数。
所以我们看这个文本字符串“陌上花开缓缓归121”,有多少个字符和字节呢?
数一数,字符个数是10个,其中7个是文字,3个是数字,而字节个数呢?前面提到过,文字是占用两个字节长度,而字母和阿拉伯数字均是只占用一个字节长度,那么很明显,字节长度就是2*7+3=17个字节,所以LEN函数计算结果是10,而LENB函数计算结果则是17。
那么通过这两个函数,聪明的你应该知道接下来就是数学问题来分别计算文字的个数以及数字的个数了。
文字的个数很简单,直接就是字节个数减去字符个数,17-10=7个;
数字的个数呢?用字符数减去我们计算得出的文字个数不就是剩下的数字个数了吗?所以是10-(17-10)=2*10-17=3个。
那么,图1的函数是不是就很清晰明了了呢?
文本用函数LEFT,取左边文字个数的字符即可,而右边的数字,就用RIGHT函数取右边数字个数的字符即可。
好了,以上这是文字在前面的情况,那么文字在后面呢?其实是一样的,知道了文字和数字分别的个数,其实也就是换一下LEFT函数和RIGHT函数就好了。
字母/数字在前,文本在后
老样子,先上函数效果示意图:
图2 分离函数效果示意图2是吧,就是交换了LEFT函数和RIGHT函数而已,好了,以上就是Excel中文本、字母/数字分离的初级方法详解了,你学会了吗?
有人或许要问了,这是初级方法,限制条件还比较大,一定还有其他方法的吧?没错,接下来下一篇就是高级篇。另外呢,关于文本分离这一个主题,我分为了初级、高级和进阶三种,其中的示例源文件均会在我的知识星球中发送,欢迎免费加入学习。
我正在「Excel进阶史」和朋友们讨论有趣的话题,你⼀起来吧?
网友评论