Excel mid 函数

17 Mar 2025 | 5 分钟阅读

MID 函数用于从字符串的中间位置提取元素。元素的形式可以是数字、字符符号。它也包括两个或多个单词或数字之间的空格。我们可以指定要从给定数据元素的中间提取的字符数。

它由下式给出

MID(text, start_num, num_chars)

其中,

Text 指的是我们想要从中提取元素的指定单元格。

Start_position 指的是我们想要开始提取的位置。

Number_of_characters 指的是我们想要从 Excel 中给定的数据里提取的字符数。

例如:

数据字符串 = 123ABC456

在这里,我们想要以字符的形式提取每个字符串中间的代码。因此,我们将使用 MID() 函数。

它由下式给出

MID(123ABC456, 4, 3)

这里,字符位于第四个位置(A)。Excel 将从第四个位置开始提取三个字符。提取将分别在第 4、第 5 和第 6 个位置进行。因此,Excel 将返回输出为:

输出: ABC

在这里,我们还将讨论 MIDB() 函数,它是 MID() 函数的另一个版本,它将双字节字符计为 2。而 MID() 函数将双字节字符计为 1。这将在本主题后面讨论。

要点

  • 如果函数中的 start_position 小于 1(例如 0),Excel 将返回“#VALUE!”
    例如:
    =MID(G13,0,7)
    在这里,Excel 将返回“#VALUE!”
  • 如果指定的 number_of_characters 大于文本的长度,Excel 会将文本前面的多余空格视为字符。这意味着 Excel 将返回直到文本末尾的字符。
    例如:
    文本: ABCD1234AB
    =MID(ABCD1234AB,2,25)
    在这里,Excel 将返回 BCD1234AB。
  • 如果 start_position 大于文本的长度,Excel 将返回空白字符串 ""。
    文本: ABCD1234AB
    =MID(ABCD1234AB,12,2)
    在这里,Excel 将返回 ""。
  • 如果 number_of_characters 是负数,Excel 将返回“#VALUE!”
    例如:
    =MID(G13,1,-7)
    在这里,Excel 将返回“#VALUE!”

让我们首先来看一些 Excel MID() 函数的例子。

示例

示例 1:提取字符串中存在的代码编号。

在这里,Excel 中的每个字符串都包含一个代码。我们想要从给定的字符串中提取数字代码。数字代码位于字符串的中间。

这只是为了更好地理解而举的一个例子。我们也可以创建自己的例子。

请参考以下步骤

  1. 点击代码编号列的第一个单元格。
  2. 输入“=MID(A3,4,3)”,如下所示:
    Excel mid function
  3. Enter 键。从给定字符串中间提取的所需数字代码将会出现。提取将从字符串的第四个字符开始,到第六个字符结束(第 4、第 5 和第 6 个)。这是因为我们已将 number_of_characters 指定为 3。它还会计算中间的任何空格。
  4. 点击单元格的右下角,并将其拖动到该列的最后一个单元格。MID() 公式将自动应用于该列的其余单元格,如下所示:
Excel mid function

每个单元格上的 MID() 函数将按如下方式工作:

=MID(ABC123DEF,4,3)
It will return '123' as the output
=MID(IJK234LMB,4,3)
It will return '234' as the output
=MID(HTY654IYT,4,3)
It will return '654' as the output
=MID(TYR765HYU,4,3)
It will return '765' as the output
=MID(UTE678FVG,4,3)
It will return '678' as the output
=MID(FKH194GTY,4,3)
It will return '194' as the output

示例 2:从给定的句子中提取一个单词。

请参考以下步骤

  1. 点击提取的单词列的第一个单元格。
  2. 输入“=MID(A3,12,3)”,如下所示:
    Excel mid function
  3. Enter 键。从句子中提取的所需单词将会出现。提取将从字符串的第十二个字符开始,到第十四个字符结束(第 12、第 13 和第 14 个)。这是因为我们已将 number_of_characters 指定为 3。
  4. 点击单元格的右下角,并将其拖动到该列的最后一个单元格。MID() 公式将自动应用于该列的其余单元格,如下所示:
Excel mid function

注意:与 MID() 函数类似,LEFT() 和 RIGHT() 函数也用于从给定字符串中提取一定数量的字符。LEFT() 函数从指定字符串的左侧提取字符,而 RIGHT() 函数从指定字符串的右侧开始提取字符。

示例 3:从五名学生的名单中提取信息。

在这里,我们将首先从学生名单中提取名字。名单如下所示:

Excel mid function

给定的名单指定了最多五个字符的名字。名字有四个字符,第五个是多余的空格。Excel 会将多余的空格视为第五个字符。

请参考以下步骤

  1. 点击名字列的第一个单元格。
  2. 输入“=MID(A3,1,5)”,如下所示:
    Excel mid function
  3. Enter 键。从句子中提取的所需名字将会出现。提取将从字符串的第一个字符开始,到第五个字符结束(第 1、第 2、第 3、第 4 和第 5 个)。这是因为我们已将 number_of_characters 指定为
  4. 点击单元格的右下角,并将其拖动到该列的最后一个单元格。MID() 公式将自动应用于该列的其余单元格,如下所示:
Excel mid function

Excel 中的 MIDB() 函数

让我们快速看一下 Excel 中的 MIDB() 函数,以消除 MID() 函数和 MIDB() 函数之间的混淆。

当我们启用支持 DBCS(双字节字符集)的语言编辑并将其设置为默认语言时,MIDB() 函数将双字节字符视为 2。否则,它会将其视为 1。对于 MID() 函数,Excel 将双字节字符和单字节字符都视为 1。

双字节语言包括中文、韩文和日文。这类语言很难用单个字节来表示。

它由下式给出

MIDB(text, start_num, num_bytes)

其中,

Text 指的是我们想要从中提取元素的指定单元格。

Start_position 指的是我们想要开始提取的位置。

Number_of_bytes 指的是我们想要从 Excel 中给定的数据里提取的字符数(按字节计算)。

MIDB() 的输出和条件与 MID() 函数类似。

让我们来看一些例子。

示例 1

文本:Ahaan Malhotra

语法:=MIDB(Ahaan Malhotra,1,5)

返回值:Ahaan

示例 2

文本:IJK234LMB

语法:=MIDB(IJK234LMB,4,3)

返回值: 234


下一主题Excel RIGHT 函数