▲本期分享技能请观看 无论是LEFT函数还是RIGHT函数,截取的位置都有一定局限性,今天我们要分享的MID函数,可以随心所欲的截取文本,想从哪开始就从哪开始。 我们来看看MID函数解析。3个参数: ①要截取的文本(字符串) ②从哪个位置开始截取 ③要截取的字符个数 还有一个与MID相似的函数MIDB,参数跟MID相同,第3个参数是按字节截取,区别只有在截取文本有汉字的情况下才会显现。通常一个汉字代表两个字节,一个英文字母或者数字代表一个字节。 下面我们通过案例来看看MID函数的实际应用吧! 案例1:将下表中各城市的平均工资提取出来。 之前我们用RIGHT函数和LEFT函数结合起来做过这个案例,很多小伙伴反映那种方法太复杂了,根据数据的特性,我们用MID 函数能够很轻松的完成。具体方法如下: ①在B2单元格录入公式:=MID(A2,4,4) ②下拉填充公式。 案例2:将下表中的中英文分别提取出来。 这个案例似乎困扰了很多小伙伴,经常在论坛或者百度搜索中看到有网友提出类似问题,学会了这个案例,我们还可以举一反三,学会如何将汉字和数字分离。具体方法如下: 提取英文的方法: ①在B9单元格录入公式:=RIGHT(A9,LENB(A9)-SUM(N(MIDB(A9,ROW($1:$20),1)=' '))) ②下拉填充公式。 友情提示:公式需要CTRL+SHIFT+ENTER三键结束。 公式解析: ① ROW($1:$20)是用来创建一个1-20的数组,这样我们使用MID函数的时候可以从第1位,第2位……第20位开始提取,可以获得20个结果,这个数组的大小要以文本字符串的最大长度为准。 例如:MIDB(A9,ROW($1:$20),1)最终得到的结果是: {' ';' ';' ';' ';'a';'p';'p';'l';'e';'';'';'';'';'';'';'';'';'';'';''} ② MIDB(A9,ROW($1:$20),1)=' ' 我们巧妙的应用了MIDB函数截取中文时如果对汉字只截取一个字节会显示为空格的特点,来确定汉字的字节数。 例如:MIDB(A9,ROW($1:$20),1)=' '最终得到的结果是: {TRUE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE} ③ N()函数是用来将数字文本或者是逻辑值转换为数字的函数。 例如:N(MIDB(A9,ROW($1:$20),1)=' ')最终得到的结果是: {1;1;1;1;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0} ④ SUM()求和函数用来求出汉字的字节数。 ⑤ LENB()用来求出整个文本字符串的字节长度。 ⑥ LENB(A9)-SUM(N(MIDB(A9,ROW($1:$20),1)=' ')用来表示整个字符串的字节长度减去汉字的字节长度,得到的就是英文的字节长度,这样我们再用RIGHT 函数截取就大功告成了。 提取中文的方法: ①在C9单元格录入公式:=LEFT(A9,SUM(N(MIDB($A9,ROW($1:$20),1)=' '))/2) ②下拉填充公式。 友情提示:公式需要CTRL+SHIFT+ENTER三键结束。 由于大部分公式和提取英文的方法一致,此处不再赘述。之所以要除以2是因为一个汉字代表2个字节,要想获得汉字的字符数,就需要除以2。如果不想除以2,那就用LEFTB函数进行截取就可以了。 今天的内容就分享到这里,非常感谢大家一直以来对布衣公子的关注和支持!如果您有任何PPT和Excel技能方面的问题,您可以给公子留言,有可能您的问题就会在下一个视频中出现! 本篇文章匹配的相关PPT、视频、Excel演示课件及WORD教程下载: https://pan.baidu.com/s/1gfKf53X |
|