当前位置: 主页 > Office办公 > Excel专区 > Excel教程 > Excel2019教程 > 使用函数将文本拆分到不同列中

使用函数将文本拆分到不同列中

  • 2022-04-05
  • 来源/作者: Wps Office教程网/ 菜鸟图库
  • 339 次浏览

你可以使用 LEFT、MID、RIGHT、SEARCH 和 LEN 文本函数来处理数据中的文本字符串。 例如, 您可以将一个单元格中的第一个、中间名和姓氏分布到三个单独的列中。

用于分配包含文本函数的名称组件的键是文本字符串中每个字符的位置。 文本字符串内空格的位置也很重要, 因为它们指示字符串中名称部分的开始或结束。

例如, 在仅包含名字和姓氏的单元格中, 姓氏在第一个空格实例后开始。 列表中的某些名称可能包含中间名, 在这种情况下, 姓氏从空格的第二个实例后开始。

本文介绍如何使用这些方便的函数从各种名称格式中提取各种组件。 还可以通过 “文本分列向导” 将文本拆分为不同的列

示例名称

说明

中间名

后缀

1

Jeff Smith

无中间名

Jeff

Smith

2

Eric S Kurjan

一个中间名首字母

Eric

症状.

Kurjan

3

Janaina。 Bueno

两个中间名首字母缩写

Janaina

A. 7.

Bueno

4

Kahn、Wendy Beth

姓先于逗号

Wendy

Beth

Kahn

5

Mary Kay Andersen

由两部分组成的名字

Mary Kay

3-d.

Andersen

6

Paula Barreto de Mattos

三部分姓氏

Paula

Barreto de Mattos

7

James van Eaton

由两部分组成的姓氏

James

van Eaton

8

Bacon Jr.., Dan K。

姓氏和后缀优先, 用逗号分隔

Dan

温度.

Bacon

Jr..

9

Gary Altman III

带后缀

加里

Altman

4

10

尊敬的袁洛 Ihrig

带前缀

袁洛

Ihrig

11

Julie Taft-rider-附件

带连字符的姓氏

任月英

Taft-rider 附件

注意: 在以下示例中的图形中, “全名” 中的突出显示显示了匹配的搜索公式要查找的字符。

示例 1: 分隔 Jeff 和 Smith

此示例分隔两个组件: 名字和姓氏。 用一个空格分隔两个名称。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

Jeff Smith

无中间名

公式

结果 (名字)

‘ = LEFT (A2, SEARCH (“”, A2, 1))

= LEFT (A2, SEARCH (“”, A2, 1))

公式

结果 (姓氏)

‘ = RIGHT (A2, LEN (A2)-搜索 (“”, A2, 1))

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 1))

  1. 名字从字符串中的第一个字符 (J) 开始,到第五个字符(空格)结束。 该公式返回 A2 中的五个字符(从左侧开始)。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索空格的数值位置(从左侧开始)。

  2. 姓氏从空格(右侧第五个字符)开始,到右侧最后一个字符 (h) 结束。 该公式提取 A2 中的五个字符(从右侧开始)。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 和 LEN 查找 num_chars 的值:

    在 A2 中搜索空格的数值位置(从左侧开始)。 (5)

  3. 统计文本字符串的总长度,然后减去步骤 1 中发现的第一个空格左侧的字符数。

示例 2: Eric S。 Kurjan: 提取名字和姓氏, 加中间名首字母

此示例使用名字、中间名首字母和姓氏。 空格分隔每个名称组件。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

Eric S Kurjan

一个中间名首字母

公式

结果 (名字)

‘ = LEFT (A2, SEARCH (“”, A2, 1))

= LEFT (A2, SEARCH (“”, A2, 1))

公式

结果 (中间名首字母)

‘ = MID (A2, 搜索 (“”, A2, 1) + 1, 搜索 (“”, A2, 1) + 1)-搜索 (“”, A2, 1) + 1)-搜索 (“”, A2, 1))

= MID (A2, SEARCH (“”, A2, 1) + 1, 搜索 (“”, A2, 1) + 1)-搜索 (“”, A2, 1) + 1)-搜索 (“”, A2, 1))

公式

实时结果 (姓氏)

‘ = RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1) + 1))

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1) + 1))

  1. 第一个名称从左面第一个字符 (E) 开始, 到第五个字符 (第一个空格) 结束。 该公式提取 A2 中的前五个字符 (从左开始)。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索空格的数值位置(从左侧开始)。 (5)

  2. 中间名

    中间名从第六个字符位置 (S) 开始, 到第八个位置 (第二个空格) 结束。 此公式涉及嵌套搜索函数以查找第二个空格实例。

    该公式提取三个字符 (从第六个位置开始)。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 start_num 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (5)。

  3. 加1以获取第一个空格后面的字符的位置。 此数值位置是中间名的起始位置。 (5 + 1 = 6)

    使用嵌套函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (5)

  4. 加1以获取第一个空格后面的字符的位置。 结果是要从中开始搜索第二个空间实例的字符编号。 (5 + 1 = 6)

  5. 在 A2 中搜索第二个空间实例 (从在步骤4中发现的第六个位置开始)。 此字符编号是中间名的结束位置。 (8)

  6. 在 A2 中搜索空格的数值位置 (从左侧的第一个字符开始)。 (5)

  7. 采用在步骤 5 中发现的第二个空格的字符编号,然后减去在步骤 6 中发现的第一个空格的字符编号。 结果是 MID 从文本字符串 (从在步骤2中发现的第六个位置开始) 中提取的字符数。 (8 – 5 = 3)

  8. 最后一个名称从右面第一个字符 (K) 开始, 到右面第一个字符 (n) 结束。 此公式涉及嵌套搜索函数以查找空格的第二个和第三个实例 (位于左侧的第五个和第八个位置)。

    该公式提取 A2 中的6个字符 (从右开始)。

    使用函数将文本拆分到不同列中

  9. 使用 LEN 和嵌套的搜索函数查找 num_chars 的值:

    在 A2 中搜索空格的数值位置 (从左侧的第一个字符开始)。 (5)

  10. 加1以获取第一个空格后面的字符的位置。 结果是要从中开始搜索第二个空间实例的字符编号。 (5 + 1 = 6)

  11. 在 A2 中搜索第二个空间实例 (从在步骤2中发现的第六个位置开始)。 此字符编号是中间名的结束位置。 (8)

  12. 计算 A2 中文本字符串的总长度, 然后减去从左到步骤3中找到的第二个空格的第二个实例的字符数。 其结果是要从全名的右侧提取的字符数。 (14 – 8 = 6)。

示例 3: Janaina。 Bueno

下面是如何提取两个中间名首字母的示例。 分隔名称组件的第一个和第三个空格实例。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

Janaina。 Bueno

两个中间名首字母缩写

公式

结果 (名字)

‘ = LEFT (A2, SEARCH (“”, A2, 1))

= LEFT (A2, SEARCH (“”, A2, 1))

公式

结果 (中间名首字母缩写)

‘ = MID (A2, 搜索 (“”, A2, 1) + 1, 搜索 (“”, A2, 搜索 (“”, A2, 1) + 1) + 1)-搜索 (“”, A2, 1))

= MID (A2, SEARCH (“”, A2, 1) + 1, 搜索 (“”, A2, 搜索 (“”, A2, 1) + 1)-搜索 (“”, A2, 1))

公式

实时结果 (姓氏)

‘ = RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1, 1) + 1) + 1)

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1, 1) + 1) + 1)

  1. 第一个名称从左面第一个字符 (J) 开始, 到第八个字符 (第一个空格) 结束。 该公式提取 A2 中的前八个字符 (从左开始)。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (8)

  2. 中间名

    中间名从第九个位置 (B) 开始, 在第十四个位置 (第三个空格) 结束。 此公式涉及嵌套搜索以查找第2、第3和第十四个位置中的第一个、第二个和第三个空间实例。

    该公式提取五个字符 (从第九个位置开始)。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 start_num 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (8)

  3. 加1以获取第一个空格后面的字符 (B) 的位置。 此数值位置是中间名的起始位置。 (8 + 1 = 9)

    使用嵌套函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (8)

  4. 加1以获取第一个空格后面的字符 (B) 的位置。 结果是要从中开始搜索第二个空间实例的字符编号。 (8 + 1 = 9)

  5. 在 A2 中搜索第二个空格 (从在步骤4中发现的第九个位置 (B) 开始)。 (11)。

  6. 加1以获取第二个空格后面的字符 (G) 的位置。 此字符编号是要从其开始搜索第三个空格的起始位置。 (11 + 1 = 12)

  7. 在 A2 中搜索第三个空格 (从在步骤6中发现的第十二个位置开始)。 14

  8. 在 A2 中搜索第一个空格的数值位置。 (8)

  9. 提取在步骤7中找到的第三个空格的字符编号, 并减去在步骤6中找到的第一个空格的字符数。 结果是 MID 从文本字符串 (从在步骤2中发现的第九个位置开始) 中提取的字符数。

  10. 最后一个名称从右面第一个字符 (B) 开始, 到右面第一个字符 (o) 结束。 此公式涉及嵌套搜索以查找第一个、第二个和第三个空间实例。

    该公式提取 A2 中的五个字符 (从全名的右侧开始)。

    使用函数将文本拆分到不同列中

    使用嵌套搜索和 LEN 函数查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (8)

  11. 加1以获取第一个空格后面的字符 (B) 的位置。 结果是要从中开始搜索第二个空间实例的字符编号。 (8 + 1 = 9)

  12. 在 A2 中搜索第二个空格 (从在步骤2中发现的第九个位置 (B) 开始)。 11

  13. 加1以获取第二个空格后面的字符 (G) 的位置。 此字符编号是开始搜索第三个空间实例的起始位置。 (11 + 1 = 12)

  14. 在 A2 中搜索第三个空格, 从在步骤6中发现的第十二个位置 (G) 开始。 14

  15. 对 A2 中的文本字符串的总长度进行计数, 然后减去从左到步骤5中发现的第三个空格的字符数。 其结果是要从全名的右侧提取的字符数。 (19-14 = 5)

示例 4: Kahn、Wendy Beth

在此示例中,姓氏在名字前面,中间名在末尾显示。 逗号标记姓氏的结尾, 空格分隔每个名称组件。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

Kahn、Wendy Beth

姓先于逗号

公式

结果 (名字)

‘ = MID (A2, 搜索 (“”, A2, 1) + 1, 搜索 (“”, A2, 1) + 1)-搜索 (“”, A2, 1) + 1)-搜索 (“”, A2, 1))

= MID (A2, SEARCH (“”, A2, 1) + 1, 搜索 (“”, A2, 1) + 1)-搜索 (“”, A2, 1) + 1)-搜索 (“”, A2, 1))

公式

结果 (中间名)

‘ = RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1) + 1))

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1) + 1))

公式

实时结果 (姓氏)

‘ = LEFT (A2, SEARCH (“”, A2, 1)-2)

= LEFT (A2, SEARCH (“”, A2, 1)-2)

  1. 名字从左侧的第七个字符 (W) 开始,到第十二个字符(第二个空格)结束。 因为名字显示在全名的中间,所以您需要使用 MID 函数提取第一个名字。

    该公式提取六个字符 (从第七个位置开始)。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 start_num 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (6)

  2. 加 1 以获取第一个空格后面的字符 (W) 的位置。 该数值位置是名字的开始位置。 (6 + 1 = 7)

    使用嵌套函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (6)

  3. 加 1 以获取第一个空格后面的字符 (W) 的位置。 结果是要从其开始搜索第二个空格的字符编号。 (6 + 1 = 7)

    在 A2 中搜索第二个空格(从在步骤 4 中发现的第七个位置开始)。 (12)

  4. 在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (6)

  5. 采用在步骤 5 中发现的第二个空格的字符编号,然后减去在步骤 6 中发现的第一个空格的字符编号。 结果是 MID 从文本字符串(从在步骤 2 中发现的第七个位置开始)中提取的字符数。 (12 – 6 = 6)

  6. 中间名

    中间名从右侧第四个字符 (B) 开始,到右侧第一个字符 (h) 结束。 该公式包含嵌套函数 SEARCH,用于从左侧第六个和第十二个位置查找第一和第二处空格。

    该公式提取四个字符 (从右开始)。

    使用函数将文本拆分到不同列中

    使用嵌套函数 SEARCH 和 LEN 查找 start_num 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (6)

  7. 加 1 以获取第一个空格后面的字符 (W) 的位置。 结果是要从其开始搜索第二个空格的字符编号。 (6 + 1 = 7)

  8. 在 A2 中搜索第二处空格(从在步骤 2 中发现的第七个位置 (W) 开始)。 (12)

  9. 统计 A2 中的文本字符串的总长度,然后减去从左侧开始到在步骤 3 中发现的第二个空格的字符数。 其结果是要从全名的右侧提取的字符数。 (16 – 12 = 4)

  10. 姓氏从左侧第一个字符 (K) 开始,到第四个字符 (n) 结束。 该公式提取四个字符(从左侧开始)。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (6)

  11. 减法 2, 获取姓氏 (n) 结尾字符的数值位置。 结果是您希望 LEFT 提取的字符数。 (6 – 2 =4)

示例 5: Mary Kay Andersen

此示例使用一个由两部分组成的名为 Mary Kay。 第二个和第三个空格分别分隔每个名称组件。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

Mary Kay Andersen

由两部分组成的名字

公式

结果 (名字)

LEFT (A2, SEARCH (“”, A2, 搜索 (“”, A2, 1) + 1))

= LEFT (A2, SEARCH (“”, A2, 搜索 (“”, A2, 1) + 1))

公式

结果 (中间名首字母)

‘ = MID (A2, SEARCH (“”, A2, 搜索 (“”, A2, 1) + 1) + 1, 搜索 (“”, A2, 1) + 1)-(搜索 (“”, A2, 1) + 1)-(搜索 (“”, A2, 1) + 1) + 1)

= MID (A2, SEARCH (“”, A2, 搜索 (“”, A2, 1) + 1) + 1, 搜索 (“”, A2, 1) + 1)-(搜索 (“”, A2, 1) + 1)-(搜索 (“”, A2, 1) + 1) + 1)

公式

实时结果 (姓氏)

‘ = RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1, 1) + 1) + 1)

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1, 1) + 1) + 1)

  1. 第一个名称从左面第一个字符开始, 到第九个字符 (第二个空格) 结束。 此公式涉及嵌套搜索以查找左侧空间的第二个实例。

    该公式提取九个字符 (从左开始)。

    使用函数将文本拆分到不同列中

    使用嵌套函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (5)

  2. 加1以获取第一个空格后面的字符 (K) 的位置。 结果是要从中开始搜索第二个空间实例的字符编号。 (5 + 1 = 6)

  3. 在 A2 中搜索第二个空间实例 (从在步骤2中发现的第六个位置 (K) 开始)。 结果是 LEFT 从文本字符串中提取的字符数。 db-9

  4. 中间名

    中间名从第十个位置 (D) 开始, 到第十二个位置 (第三个空格) 结束。 此公式涉及嵌套搜索以查找第一个、第二个和第三个空间实例。

    该公式提取中间的两个字符 (从第十个位置开始)。

    使用函数将文本拆分到不同列中

    使用嵌套搜索函数查找 start_num 的值:

    在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (5)

  5. 加1以获取第一个空格后面的字符 (K)。 结果是要从其开始搜索第二个空格的字符编号。 (5 + 1 = 6)

  6. 在 A2 中搜索第二个空间实例的位置 (从在步骤2中发现的第六个位置 (K) 开始)。 结果为左从左提取的字符数。 db-9

  7. 加1以获取第二个空格后面的字符 (D)。 结果是中间名的起始位置。 (9 + 1 = 10)

    使用嵌套函数 SEARCH 查找 num_chars 的值:

    搜索第二个空格后面的字符 (D) 的数值位置。 结果是要从其开始搜索第三个空格的字符编号。 10

  8. 在 A2 中搜索第三个空格的数值位置 (从左侧开始)。 结果是中间名的结束位置。 (12)

  9. 搜索第二个空格后面的字符 (D) 的数值位置。 结果是中间名的开始位置。 10

  10. 获取在步骤6中发现的第三个空格的字符编号, 并减去在步骤7中发现的 “D” 的字符数。 结果是 MID 从文本字符串 (从在步骤4中发现的第十个位置开始) 中提取的字符数。 (12-10 = 2)

  11. 姓氏从右边开始八个字符。 此公式涉及嵌套搜索, 以查找第一个、第二个和第十二个位置中的第三个空间实例。

    该公式提取右侧八个字符。

    使用函数将文本拆分到不同列中

    使用嵌套搜索和 LEN 函数查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (5)

  12. 加1以获取第一个空格后面的字符 (K)。 结果是要从其开始搜索空间的字符编号。 (5 + 1 = 6)

  13. 在 A2 中搜索第二个空格 (从在步骤2中发现的第六个位置 (K) 开始)。 db-9

  14. 加1以获取第二个空格后面的字符 (D) 的位置。 结果是中间名的起始位置。 (9 + 1 = 10)

  15. 在 A2 中搜索第三个空格的数值位置 (从左侧开始)。 结果是中间名的结束位置。 (12)

  16. 对 A2 中的文本字符串的总长度进行计数, 然后减去从左到步骤5中发现的第三个空格的字符数。 其结果是要从全名的右侧提取的字符数。 (20-12 = 8)

示例 6: Paula Barreto de Mattos

此示例使用一个由三部分组成的姓氏: Barreto de Mattos。 第一个空格标记名字的结尾和姓氏的开头。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

Paula Barreto de Mattos

三部分姓氏

公式

结果 (名字)

‘ = LEFT (A2, SEARCH (“”, A2, 1))

= LEFT (A2, SEARCH (“”, A2, 1))

公式

结果 (姓氏)

RIGHT (A2, LEN (A2)-搜索 (“”, A2, 1))

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 1))

  1. 第一个名称从左面第一个字符 (P) 开始, 到第六个字符 (第一个空格) 结束。 该公式提取左侧的六个字符。

    使用函数将文本拆分到不同列中

    使用 Search 函数查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (6)

  2. 姓氏从右面第十七个字符 (B) 开始, 到右面第一个字符 (s) 结束。 该公式提取右侧的十七个字符。

    使用函数将文本拆分到不同列中

    使用 LEN 和 SEARCH 函数查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (6)

  3. 计算 A2 中文本字符串的总长度, 然后减去从左面到第一个空格 (在步骤1中找到) 的字符数。 其结果是要从全名的右侧提取的字符数。 (23-6 = 17)

示例 7: James van Eaton

此示例使用一个由两部分组成的姓氏: van Eaton。 第一个空格标记名字的结尾和姓氏的开头。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

James van Eaton

由两部分组成的姓氏

公式

结果 (名字)

‘ = LEFT (A2, SEARCH (“”, A2, 1))

= LEFT (A2, SEARCH (“”, A2, 1))

公式

结果 (姓氏)

‘ = RIGHT (A2, LEN (A2)-搜索 (“”, A2, 1))

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 1))

  1. 第一个名称从左面第一个字符 (J) 开始, 到第八个字符 (第一个空格) 结束。 该公式提取左侧的六个字符。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (6)

  2. 最后一个名称从右侧的第九个字符 (v) 开始, 到右侧的第一个字符 (n) 结束。 该公式提取完整名称右侧的九个字符。

    使用函数将文本拆分到不同列中

    使用 LEN 和 SEARCH 函数查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (6)

  3. 计算 A2 中文本字符串的总长度, 然后减去从左面到第一个空格 (在步骤1中找到) 的字符数。 其结果是要从全名的右侧提取的字符数。 (15-6 = 9)

示例 8: Bacon Jr., Dan K。

在此示例中, 姓氏最先出现, 后跟后缀。 逗号将姓氏和后缀与名字和中间名首字母分隔开。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

Bacon Jr.., Dan K。

姓氏和后缀优先, 用逗号分隔

公式

结果 (名字)

‘ = MID, 搜索 (“”, A2, 搜索 (“”, A2, 1) + 1) + 1, 搜索 (“”, A2, 1) + 1)-搜索 (“”, A2, 1) + 1) + 1)-搜索 (“”, A2, 1) + 1)

= MID (A2, 搜索, “”, A2, 搜索 (“”, A2, 1) + 1) + 1, 搜索 (“”, A2, 搜索 (“”, A2, 1, 1) + 1)-搜索 (“”, A2, 1) + 1)

公式

结果 (中间名首字母)

‘ = RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1, 1) + 1) + 1)

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1, 1) + 1) + 1)

公式

结果 (姓氏)

‘ = LEFT (A2, SEARCH (“”, A2, 1))

= LEFT (A2, SEARCH (“”, A2, 1))

公式

结果 (后缀)

‘ = MID (A2, SEARCH (“”, A2, 1) + 1, (搜索 (“”, A2, 1) + 1)-2)-搜索 (“”, A2, 1))

= MID (A2, SEARCH (“”, A2, 1) + 1, (搜索 (“”, A2, 1) + 1)-2)-搜索 (“”, A2, 1))

  1. 第一个名称以第十二个字符 (D) 开头, 以第15个字符 (第三个空格) 结尾。 该公式提取三个字符 (从第十二个位置开始)。

    使用函数将文本拆分到不同列中

    使用嵌套搜索函数查找 start_num 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (6)

  2. 加1以获取第一个空格后面的字符 (J)。 结果是要从其开始搜索第二个空格的字符编号。 (6 + 1 = 7)

  3. 在 A2 中搜索第二个空格 (从在步骤2中发现的第七个位置 (J) 开始)。 11

  4. 加1以获取第二个空格后面的字符 (D)。 结果为第一个名称的起始位置。 (11 + 1 = 12)

    使用嵌套函数 SEARCH 查找 num_chars 的值:

    搜索第二个空格后面的字符 (D) 的数值位置。 结果是要从其开始搜索第三个空格的字符编号。 (12)

  5. 在 A2 中搜索第三个空格的数值位置 (从左侧开始)。 结果是第一个名称的结束位置。 岁

  6. 搜索第二个空格后面的字符 (D) 的数值位置。 结果是名字的开始位置。 (12)

  7. 获取在步骤6中发现的第三个空格的字符编号, 并减去在步骤7中发现的 “D” 的字符数。 结果是 MID 从文本字符串 (从第十二个位置开始) (在步骤4中发现) 中提取的字符数。 (15-12 = 3)

  8. 中间名

    中间名从右边的第二个字符 (K) 开始。 该公式提取右侧的两个字符。

    使用函数将文本拆分到不同列中

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (6)

  9. 加1以获取第一个空格后面的字符 (J)。 结果是要从其开始搜索第二个空格的字符编号。 (6 + 1 = 7)

  10. 在 A2 中搜索第二个空格 (从在步骤2中发现的第七个位置 (J) 开始)。 11

  11. 加1以获取第二个空格后面的字符 (D)。 结果为第一个名称的起始位置。 (11 + 1 = 12)

  12. 在 A2 中搜索第三个空格的数值位置 (从左侧开始)。 结果是中间名的结束位置。 岁

  13. 计算 A2 中文本字符串的总长度, 然后减去从左面到第三个空格 (在步骤5中找到) 的字符数。 其结果是要从全名的右侧提取的字符数。 (17-15 = 2)

  14. 最后一个名称从左面第一个字符 (B) 开始, 到第六个字符 (第一个空格) 结束。 因此, 该公式提取左侧的六个字符。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (6)

  15. 后缀

    后缀从左面第七个字符 (J) 开始, 到左面第九个字符 (.) 结束。 该公式提取三个字符 (从第七个字符开始)。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 start_num 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (6)

  16. 加1以获取第一个空格后面的字符 (J)。 结果是后缀的起始位置。 (6 + 1 = 7)

    使用嵌套函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (6)

  17. 加1以获取第一个空格后面的字符 (J) 的数值位置。 结果是要从其开始搜索第二个空格的字符编号。 7

  18. 在 A2 中搜索第二个空格的数值位置 (从在步骤4中发现的第七个字符开始)。 11

  19. 从在步骤4中找到的第二个空格的字符数中减去 1, 以获取 “,” 的字符数。 结果是后缀的结束位置。 (11-1 = 10)

  20. 搜索第一个空格的数值位置。 (6)

  21. 找到第一个空格后, 加1以查找下一个字符 (J), 也可以在步骤3和4中找到。 7

  22. 采用步骤6中发现的 “,” 字符编号, 并减去在步骤3和4中发现的 “J” 的字符数。 结果是 MID 从文本字符串 (从第七个位置开始) (在步骤2中发现) 中提取的字符数。 (10-7 = 3)

示例 9: Gary Altman III

在此示例中, 名字位于字符串的开头, 后缀位于结尾处, 因此你可以使用类似于示例2的公式: 使用 LEFT 函数提取第一个名称, MID 函数提取姓氏, 以及用于提取后缀的正确函数。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

Gary Altman III

带有后缀的姓氏和名字

公式

结果 (名字)

‘ = LEFT (A2, SEARCH (“”, A2, 1))

= LEFT (A2, SEARCH (“”, A2, 1))

公式

结果 (姓氏)

‘ = MID, 搜索 (“”, A2, 1) + 1, 搜索 (“”, A2, 1) + 1)-(SEARCH (“”, A2, 1) + 1)

= MID (A2, SEARCH (“”, A2, 1) + 1, 搜索 (“”, A2, 1) + 1)-(SEARCH (“”, A2, 1) + 1)-(搜索 (“”, A2, 1) + 1))

公式

结果 (后缀)

‘ = RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1) + 1))

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1) + 1))

  1. 第一个名称从左面第一个字符 (G) 开始, 到第五个字符 (第一个空格) 结束。 因此, 该公式提取全名的左面五个字符。

    使用函数将文本拆分到不同列中

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (5)

  2. 最后一个名称从左面第六个字符 (A) 开始, 到第十个字符 (第二个空格) 结束。 此公式涉及嵌套搜索以查找空间的位置。

    该公式提取中间的六个字符 (从第六个字符开始)。

    使用函数将文本拆分到不同列中

    使用函数 SEARCH 查找 start_num 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (5)

  3. 加1以获取第一个空格后面的字符 (A) 的位置。 结果是姓氏的起始位置。 (5 + 1 = 6)

    使用嵌套函数 SEARCH 查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (5)

  4. 加1以获取第一个空格后面的字符 (A) 的位置。 结果是要从其开始搜索第二个空格的字符编号。 (5 + 1 = 6)

  5. 在 A2 中搜索第二个空格的数值位置 (从在步骤4中发现的第六个字符开始)。 此字符编号是姓氏的结束位置。 (12)

  6. 搜索第一个空格的数值位置。 (5)

  7. 加1以查找第一个空格后面的字符 (A) 的数值位置, 也可以在步骤3和4中找到。 (6)

  8. 采用第5步中发现的第二个空格的字符编号, 然后减去在步骤6和7中发现的 “A” 的字符编号。 结果是 MID 从文本字符串 (从在步骤2中发现的第六个位置开始) 中提取的字符数。 (12 – 6 = 6)

  9. 后缀

    后缀从右侧开始三个字符。 此公式涉及嵌套搜索以查找空间的位置。

    使用函数将文本拆分到不同列中

    使用嵌套搜索和 LEN 函数查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (5)

  10. 加1以获取第一个空格后面的字符 (A)。 结果是要从其开始搜索第二个空格的字符编号。 (5 + 1 = 6)

  11. 在 A2 中搜索第二个空格 (从在步骤2中发现的第六个位置 (A) 开始)。 (12)

  12. 计算 A2 中文本字符串的总长度, 然后减去从左面到第二个空格 (在步骤3中发现) 的字符数。 其结果是要从全名的右侧提取的字符数。 (15-12 = 3)

示例 10: 袁洛 Ihrig

在此示例中, 全名前面有一个前缀, 并且使用类似于示例2的公式: MID 函数, 用于提取名字, 正确的函数可提取姓氏。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

尊敬的袁洛 Ihrig

带前缀

公式

结果 (名字)

‘ = MID, 搜索 (“”, A2, 1) + 1, 搜索 (“”, A2, 1) + 1)-(SEARCH (“”, A2, 1) + 1)

= MID (A2, SEARCH (“”, A2, 1) + 1, 搜索 (“”, A2, 1) + 1)-(SEARCH (“”, A2, 1) + 1)-(搜索 (“”, A2, 1) + 1))

公式

结果 (姓氏)

‘ = RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1) + 1))

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 搜索 (“”, A2, 1) + 1))

  1. 第一个名称从左面第五个字符 (R) 开始, 到第九个字符 (第二个空格) 结束。 该公式嵌套搜索以查找空间的位置。 它提取四个字符 (从第五个位置开始)。

    使用函数将文本拆分到不同列中

    使用 SEARCH 函数查找 start_num 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 第

  2. 加1以获取第一个空格后面的字符 (R) 的位置。 结果为第一个名称的起始位置。 (4 + 1 = 5)

    使用嵌套搜索函数查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 第

  3. 加1以获取第一个空格后面的字符 (R) 的位置。 结果是要从其开始搜索第二个空格的字符编号。 (4 + 1 = 5)

  4. 在 A2 中搜索第二个空格的数值位置 (从第3步和第4步中发现的第五个字符开始)。 此字符编号是名字的结束位置。 db-9

  5. 搜索第一个空格。 第

  6. 加1以查找第一个空格 (R) 后面的字符的数值位置 (在步骤3和4中也可以找到)。 (5)

  7. 采用第5步中发现的第二个空格的字符编号, 然后减去在步骤6和步骤7中找到的 “R” 的字符数。 结果是 MID 从文本字符串 (从在步骤2中发现的第五个位置开始) 中提取的字符数。 (9-5 = 4)

  8. 最后一个名称从右侧开始五个字符。 此公式涉及嵌套搜索以查找空间的位置。

    使用函数将文本拆分到不同列中

    使用嵌套搜索和 LEN 函数查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 第

  9. 加1以获取第一个空格后面的字符 (R) 的位置。 结果是要从其开始搜索第二个空格的字符编号。 (4 + 1 = 5)

  10. 在 A2 中搜索第二个空格 (从在步骤2中发现的第五个位置 (R) 开始)。 db-9

  11. 计算 A2 中文本字符串的总长度, 然后减去从左面到第二个空格 (在步骤3中发现) 的字符数。 其结果是要从全名的右侧提取的字符数。 (14-9 = 5)

示例 11: Julie Taft-rider-附件

此示例使用带连字符的姓氏。 空格分隔每个名称组件。

复制表格中的单元格, 并粘贴到单元格 A1 中的 Excel 工作表中。 您在左侧看到的公式将显示为引用, Excel 会自动将右侧的公式转换为相应结果。

点儿    将数据粘贴到工作表之前, 请将列 A 和列 B 的列宽设置为250。

示例名称

说明

Julie Taft-rider-附件

带连字符的姓氏

公式

结果 (名字)

‘ = LEFT (A2, SEARCH (“”, A2, 1))

= LEFT (A2, SEARCH (“”, A2, 1))

公式

结果 (姓氏)

‘ = RIGHT (A2, LEN (A2)-搜索 (“”, A2, 1))

= RIGHT (A2, LEN (A2)-搜索 (“”, A2, 1))

  1. 第一个名称从左侧的第一个字符开始, 到第六个位置 (第一个空格) 结束。 该公式提取左侧的六个字符。

    使用函数将文本拆分到不同列中

    使用 SEARCH 函数查找 num_chars 的值:

    在 A2 中搜索第一个空格的数值位置 (从左开始)。 (6)

  2. 整个姓氏从右面第10个字符 (T) 开始, 到右面第一个字符 (r) 结束。

    使用函数将文本拆分到不同列中

    使用 LEN 和 SEARCH 函数查找 num_chars 的值:

    在 A2 中搜索空格的数值位置 (从左侧的第一个字符开始)。 (6)

  3. 计算要提取的文本字符串的总长度, 然后减去从左面到第一个空格 (在步骤1中找到) 的字符数。 (16-6 = 10)

另请参阅

使用“文本分列向导”将文本拆分为不同的列