excel的mid函数的使用方法(这四个高级用法)

首页常识更新时间:2023-06-16 16:39:38

Hello,大家好!这次和大家分享MID函数的用法。mid函数用于提取字符,本身的用法非常简单,使用情形也很有限。实际工作中,我们经常需要将mid函数和其他函数组合使用。因此,本文除了介绍mid函数的基础用法,还会进一步讲解mid函数与len函数、FIND函数的组合用法。

1

基础用法

mid函数从一个字符串的指定位置开始,提取指定数量的字符。

mid函数的语法为MID(text,start_num,num_chars)。mid函数从参数text中提取字符串,start_num表示从哪个位置开始提取字符,num_chars指提取多少个字符。

如下图所示,为mid函数的基础用法示例。

(1)B2单元格的公式“=MID(A2,2,3)”,表示从A2单元格的字符串“hello”的第2个字符(即“e”)开始,一共提取3个字符,得到结果“ell”。

(2)B3单元格从文本“猪猪侠”的第1个字符开始,提取2个字符,得到“猪猪”。

(3)B4单元格从文本“hello 猪猪侠”的第4个字符(即“l")开始,提取5个字符,得到结果“lo 猪猪”。需要注意的是,空格也算作一个字符

(4)B5单元格从文本“hello 猪猪侠”的第4个字符开始,提取100个字符。很显然,从第4个字符开始提取,剩下的字符数量是不够100个字符的。此时mid函数会从第4个字符开始,一直提取到最后一个字符,因此返回结果“lo 猪猪侠”。

需要牢记的是,mid函数(包括其他字符提取函数right函数、left函数)返回的结果是文本。如果mid函数提取的数字需要参与计算,必须将其转化为真正的数值。这一点将会在下文的示例中进一步说明。

2

组合用法

mid函数从指定位置提取指定数量的字符。指定位置、指定数量通常不是直接输入的,而是通过函数计算出来的。

find函数可以返回一个字符(串)在另一个字符串中的位置,len函数可以返回字符串的长度。mid函数经常与find函数、len函数组合使用。

例1:提取分隔符之后的文本

如下图所示,姓名和ID号之间使用“/”分隔,要求提取ID。

想要提取ID,需要知道分隔符“/”在文本中的位置,然后从下一个字符开始,一直提取到最后一个字符。可以使用find函数返回“/”的位置。

以B2单元格的公式为例说明find函数的用法,“=find("/",A2,1)”,表示从A2单元格的文本中查找“/”,公式中的“1”表示从第一个字符开始查找。find函数返回“4”,表示“/”在第4个字符处。

如下图所示,B2单元格的公式为

=MID(A2,FIND("/",A2,1) 1,20)

mid函数从“/”的下一个字符开始,提取20个字符。由于A列的字符数小于20,因此mid函数可以提取“/”之后的所有字符。

例2:提取两个分隔符之间的文本

如下图所示,姓名、ID、城市之间使用“/”分隔,要求提取ID。

想要使用mid函数提取分隔符“/”之间的数字,关键是找到“/”在文本中第一次、第二次出现的位置。

通过例1,我们知道了如何使用find函数找到分隔符“/”第一次出现的位置。那么如何找到“/”第二次出现的位置呢?

如下图所示,以B2单元格的公式为例,=FIND("/",A2,FIND("/",A2,1) 1),表示在A2单元格中找到“/”出现的位置,但不是从第1个字符开始查找,而是从“/”第一次出现位置的下一个字符开始查找。FIND("/",A2,1)返回“/”第一次出现的位置,Find函数默认从第1个字符开始查找,因此第三个参数“1”可以省略。

知道分隔符“/”两次出现的位置分别在哪里,再使用mid函数提取分隔符之间的数字就比较简单了。如下图所示,B2单元格的公式为:=MID(A2,FIND("/",A2) 1,FIND("/",A2,FIND("/",A2) 1)-FIND("/",A2)-1)

公式的原理就是:mid(A2,"/"第一次出现的位置 1,"/"第二次出现的位置-第一次出现的位置-1)

例3:提取数字

如下图所示,姓名和ID之间以“/”分隔,ID全部为数字,ID和描述之间没有分隔符号。那么如何提取数字ID呢?

使用mid函数提取数字,起始位置是“/”的下一个字符,用find函数即可找到起始位置。但是如何找到数字的个数呢?我们可以使用len函数、lenb函数。

如下图所示,len函数可以返回字符数量。A2单元格中有10个字符;A3单元格中有14个字符。

如下图所示,lenb函数可以返回字节数量。一个汉字是两个字节,一个字母或数字是1个字节,“/”也是一个字节。lenb(A2)返回结果“15”,len(A2)返回结果“10”,相差的“5”就是汉字的个数。

如下图所示,B2单元格的公式“=2*LEN(A2)-LENB(A2)-1”返回的就是A2单元格数字的个数。“lenb(A2)-len(A2)”返回汉字的个数,总字符数量len(A2)减去汉字的个数就是(数字 “/”)的个数,再减去1就得到数字的个数。

因此,使用mid函数提取数字的公式为:

=MID(A2,FIND("/",A2) 1,2*LEN(A2)-LENB(A2)-1)

例4:将提取的数字转化为可以计算的数值

如下图所示,A列是姓名、金额、城市三个信息的混合文本,要求提取金额。

从例2中,我们知道mid find函数组合可以提取两个分隔符之间的数字。下图中B列的公式表面来看是没有什么问题的。

但是如果对提取的金额求和,SUM函数返回的值却是0。原因是mid返回的结果是文本,对文本求和,结果自然为0。

如果mid函数提取的数字需要进一步计算,需要将其转化为真正的数值。将文本型数值转换为真正的数值有多种方法。在本例中,在mid函数前添加“--”(即两个负号)就可以将结果转化为真正的数值。

如下图所示,B2单元格的公式为:

=--MID(A2,FIND("/",A2) 1,FIND("/",A2,FIND("/",A2) 1)-FIND("/",A2)-1)

在mid函数提取的结果前添加两个负号,将文本转化为可以计算的数值。

,
展开阅读全文
推荐内容
热门内容
热门文章

© 2007-2022 http://www.anhuiqq.cn,All Rights Reserved.