可以使用 LEFT、MID、RIGHT、SEARCH 和 LEN 文本函数来操作数据中的文本字符串。 例如,可以将单个单元格中的名字、中间名和姓氏分布到三个单独的列中。
使用文本函数分发名称组件的关键是文本字符串中每个字符的位置。 文本字符串中空格的位置也很重要,因为它们指示字符串中名称组件的开头或结尾。
例如,在仅包含名字和姓氏的单元格中,姓氏在空格的第一个实例之后开头。 列表中的某些名称可能包含中间名,在这种情况下,姓氏在空格的第二个实例之后开头。
本文介绍如何使用这些方便的函数从各种名称格式中提取各种组件。 还可以使用“文本分列向导”将文本拆分为不同的列
| 示例名称 | 说明 | 名字 | 中间名 | 姓氏 | 后缀 | |
|---|---|---|---|---|---|---|
| 1 | Jeff Smith | 无中间名 | Jeff | Smith | ||
| 2 | Eric S. Kurjan | 一个中间首字母 | Eric | S. | 库尔强语 | |
| 3 | 贾奈娜·布埃诺 | 两个中间字母缩写 | Janaina | B. G. | Bueno | |
| 4 | Kahn, Wendy Beth | 姓氏在前,加上逗号 | Wendy | 贝丝 | Kahn | |
| 5 | 玫琳凯·安徒生 | 由两部分组成的名字 | 玫琳凯 | D. | Andersen | |
| 6 | Paula Barreto de Mattos | 三部分姓氏 | Paula | 巴雷托·德·马托斯 | ||
| 7 | James van Eaton | 两部分的姓氏 | James | van Eaton | ||
| 8 | 小培根,丹 K. | 姓氏和后缀排在前面,加上逗号 | Dan | K. | 培根 | Jr. |
| 9 | 加里·奥特曼三世 | 带后缀 | 加里 | Altman | III | |
| 10 | Ryan Ihrig 先生 | 带前缀 | Ryan | Ihrig | ||
| 11 | 朱莉·塔夫脱-莱德 | 带连字符的姓氏 | 任月英 | Taft-Rider |
注意
在以下示例的图形中,全名中的突出显示显示匹配的 SEARCH 公式要查找的字符。
示例 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) -SEARCH (“ ”,A2,1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,1) ) |
名字
名字从字符串中的第一个字符 (J) 开始,到第五个字符(空格)结束。 该公式返回 A2 中的五个字符(从左侧开始)。
使用函数 SEARCH 查找 num_chars 的值:
在 A2 中搜索空格的数值位置(从左侧开始)。姓氏
姓氏从空格(右侧第五个字符)开始,到右侧最后一个字符 (h) 结束。 该公式提取 A2 中的五个字符(从右侧开始)。
使用函数 SEARCH 和 LEN 查找 num_chars 的值:
在 A2 中搜索空格的数值位置(从左侧开始)。 (5)统计文本字符串的总长度,然后减去步骤 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,SEARCH (“ ”,A2,1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) -SEARCH (“ ”,A2,1) ) | =MID (A2,SEARCH (“ ”,A2,1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) -SEARCH (“ ”,A2,1) ) |
| 公式 | 实时结果 (姓氏) |
| '=RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) |
名字
第一个名称从 E) 左 (第一个字符开始,到第一个空格) (第五个字符结尾。 公式从左侧开始提取 A2 中的前五个字符。
使用函数 SEARCH 查找 num_chars 的值:
在 A2 中搜索空格的数值位置(从左侧开始)。 (5)中间名
中间名从 S) (第六个字符位置开始,到第二个空格) (第八个位置结束。 此公式涉及嵌套 SEARCH 函数以查找空格的第二个实例。
公式从第六个位置开始提取三个字符。
使用函数 SEARCH 查找 start_num 的值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (5) 。添加 1 以获取字符在第一个空格 (S) 后的位置。 此数字位置是中间名的起始位置。 (5 + 1 = 6)
使用嵌套函数 SEARCH 查找 num_chars 的值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (5)添加 1 以获取字符在第一个空格 (S) 后的位置。 结果是您要开始搜索空间的第二个实例的字符编号。 (5 + 1 = 6)
在 A2 中搜索空格的第二个实例,从步骤 4 中找到的第六个位置 (S) 开始。 此字符编号是中间名的结尾位置。 (8)
在 A2 中搜索空格的数字位置,从左起第一个字符开始。 (5)
采用在步骤 5 中发现的第二个空格的字符编号,然后减去在步骤 6 中发现的第一个空格的字符编号。 结果是从步骤 2 中找到的第六个位置开始,从 MID 从文本字符串中提取的字符数。 (8 – 5 = 3)
姓氏
姓氏从右 (K) 开始六个字符,到右 (n) 的第一个字符结尾。 此公式涉及嵌套 SEARCH 函数以查找空格 (的第二个和第三个实例,它们位于左) 的第五和第八个位置。
公式从右起提取 A2 中的六个字符。
使用 LEN 和嵌套 SEARCH 函数查找num_chars值:
在 A2 中搜索空格的数字位置,从左起第一个字符开始。 (5)添加 1 以获取字符在第一个空格 (S) 后的位置。 结果是您要开始搜索空间的第二个实例的字符编号。 (5 + 1 = 6)
在 A2 中搜索空格的第二个实例,从步骤 2 中找到的第 6 个位置开始 (S) 。 此字符编号是中间名的结尾位置。 (8)
计算 A2 中文本字符串的总长度,然后从左侧减去字符数,直至步骤 3 中找到的第二个空格实例。 其结果是要从全名的右侧提取的字符数。 (14 – 8 = 6) 。
示例 3:Janaina B. G. Bueno
下面是如何提取两个中间名首字母缩写的示例。 第一个和第三个空格实例分隔名称组件。
复制表中的单元格,然后粘贴到单元格 A1 的 Excel 工作表中。 将显示左侧的公式以供参考,而 Excel 会自动将右侧的公式转换为适当的结果。
提示将数据粘贴到工作表中之前,将 A 列和 B 列的列宽设置为 250。
| 示例名称 | 说明 |
|---|---|
| 贾奈娜·布埃诺 | 两个中间字母缩写 |
| 公式 | 结果 (名字) |
| '=LEFT (A2, SEARCH (“ ”,A2,1) ) | =LEFT (A2, SEARCH (“ ”,A2,1) ) |
| 公式 | 中间首字母缩写 (结果) |
| '=MID (A2,SEARCH (“ ”,A2,1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) -SEARCH (“ ”,A2,1) ) | =MID (A2,SEARCH (“ ”,A2,1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) -SEARCH (“ ”,A2,1) ) |
| 公式 | 实时结果 (姓氏) |
| '=RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) ) |
名字
第一个名称从 J) 左 (第一个字符开始,到第一个空格) (第八个字符结尾。 该公式从左侧开始提取 A2 中的前八个字符。
使用函数 SEARCH 查找 num_chars 的值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (8)中间名
中间名从 B) (第九位开始,到第三个空格) (第十四位结束。 此公式涉及嵌套 SEARCH 以查找第八、第十一和十四个位置的第一个、第二个和第三个空间实例。
公式从第九个位置开始提取五个字符。
使用函数 SEARCH 查找 start_num 的值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (8)加 1 以获取字符在第一个空格 (B) 后的位置。 此数字位置是中间名的起始位置。 (8 + 1 = 9)
使用嵌套函数 SEARCH 查找 num_chars 的值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (8)加 1 以获取字符在第一个空格 (B) 后的位置。 结果是您要开始搜索空间的第二个实例的字符编号。 (8 + 1 = 9)
在 A2 中搜索第二个空格,从步骤 4 中找到的第 9 个位置开始 (B) 开始。 (11) 。
添加 1 以获取字符在第二个空格 (G) 后的位置。 此字符编号是您要开始搜索第三个空格的起始位置。 (11 + 1 = 12)
在 A2 中搜索第三个空格,从步骤 6 中找到的第 12 个位置开始。 (14)
在 A2 中搜索第一个空格的数字位置。 (8)
取步骤 7 中找到的第三个空格的字符号,减去步骤 6 中找到的第一个空格的字符号。 结果是从步骤 2 中找到的第 9 个位置开始的文本字符串 MID 提取的字符数。
姓氏
姓氏从右 (B) 开始五个字符,到右 (o) 的第一个字符结束。 此公式涉及嵌套 SEARCH 以查找空间的第一个、第二个和第三个实例。
该公式从 A2 中从全名右侧开始提取五个字符。
使用嵌套的 SEARCH 和 LEN 函数查找num_chars值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (8)加 1 以获取字符在第一个空格 (B) 后的位置。 结果是您要开始搜索空间的第二个实例的字符编号。 (8 + 1 = 9)
从 B (步骤 2 中找到的第九个位置开始搜索 A2 中的第二个空格) 。 (11)
添加 1 以获取字符在第二个空格 (G) 后的位置。 此字符编号是您要开始搜索空间的第三个实例的起始位置。 (11 + 1 = 12)
在 A2 中搜索第三个空格,从步骤 6 中找到的第 12 位 G (开始) 。 (14)
计算 A2 中文本字符串的总长度,然后从左侧减去字符数,直到步骤 5 中找到的第三个空格。 其结果是要从全名的右侧提取的字符数。 (19 - 14 = 5)
示例 4:Kahn、Wendy Beth
在此示例中,姓氏在名字前面,中间名在末尾显示。 逗号标记姓氏的结尾,每个名称组件之间用空格分隔。
复制表中的单元格,然后粘贴到单元格 A1 的 Excel 工作表中。 将显示左侧的公式以供参考,而 Excel 会自动将右侧的公式转换为适当的结果。
提示将数据粘贴到工作表中之前,将 A 列和 B 列的列宽设置为 250。
| 示例名称 | 说明 |
|---|---|
| Kahn, Wendy Beth | 姓氏在前,加上逗号 |
| 公式 | 结果 (名字) |
| '=MID (A2,SEARCH (“ ”,A2,1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) -SEARCH (“ ”,A2,1) ) | =MID (A2,SEARCH (“ ”,A2,1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) -SEARCH (“ ”,A2,1) ) |
| 公式 | 中间名) (结果 |
| '=RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) |
| 公式 | 实时结果 (姓氏) |
| '=LEFT (A2, SEARCH (“ ”,A2,1) -2) | =LEFT (A2, SEARCH (“ ”,A2,1) -2) |
名字
名字从左侧的第七个字符 (W) 开始,到第十二个字符(第二个空格)结束。 因为名字显示在全名的中间,所以您需要使用 MID 函数提取第一个名字。
公式从第七个位置开始提取六个字符。
使用函数 SEARCH 查找 start_num 的值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (6)加 1 以获取第一个空格后面的字符 (W) 的位置。 该数值位置是名字的开始位置。 (6 + 1 = 7)
使用嵌套函数 SEARCH 查找 num_chars 的值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (6)加 1 以获取第一个空格后面的字符 (W) 的位置。 结果是要从其开始搜索第二个空格的字符编号。 (6 + 1 = 7)
在 A2 中搜索第二个空格(从在步骤 4 中发现的第七个位置开始)。 (12)在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (6)
采用在步骤 5 中发现的第二个空格的字符编号,然后减去在步骤 6 中发现的第一个空格的字符编号。 结果是 MID 从文本字符串(从在步骤 2 中发现的第七个位置开始)中提取的字符数。 (12 - 6 = 6)
中间名
中间名从右侧第四个字符 (B) 开始,到右侧第一个字符 (h) 结束。 该公式包含嵌套函数 SEARCH,用于从左侧第六个和第十二个位置查找第一和第二处空格。
公式从右开始提取四个字符。
使用嵌套函数 SEARCH 和 LEN 查找 start_num 的值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (6)加 1 以获取第一个空格后面的字符 (W) 的位置。 结果是要从其开始搜索第二个空格的字符编号。 (6 + 1 = 7)
在 A2 中搜索第二处空格(从在步骤 2 中发现的第七个位置 (W) 开始)。 (12)
统计 A2 中的文本字符串的总长度,然后减去从左侧开始到在步骤 3 中发现的第二个空格的字符数。 其结果是要从全名的右侧提取的字符数。 (16 - 12 = 4)
姓氏
姓氏从左侧第一个字符 (K) 开始,到第四个字符 (n) 结束。 该公式提取四个字符(从左侧开始)。
使用函数 SEARCH 查找 num_chars 的值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (6)减去 2 可得到姓氏结尾字符的数字位置 (n) 。 结果是您希望 LEFT 提取的字符数。 (6 - 2 =4)
示例 5:玫琳凯·安徒生
本示例使用由两部分组成的名字 Mary Kay。 第二个和第三个空格分隔每个名称组件。
复制表中的单元格,然后粘贴到单元格 A1 的 Excel 工作表中。 将显示左侧的公式以供参考,而 Excel 会自动将右侧的公式转换为适当的结果。
提示将数据粘贴到工作表中之前,将 A 列和 B 列的列宽设置为 250。
| 示例名称 | 说明 |
|---|---|
| 玫琳凯·安徒生 | 由两部分组成的名字 |
| 公式 | 结果 (名字) |
| 左 (A2,搜索 (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) | =LEFT (A2, SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) |
| 公式 | 结果 (中间初始) |
| '=MID (A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) - (SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) ) | =MID (A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) - (SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) ) |
| 公式 | 实时结果 (姓氏) |
| '=RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) ) |
名字
第一个名称从左起的第一个字符开始,到第二个空格) (第九个字符结尾。 此公式涉及嵌套 SEARCH 以从左侧查找空间的第二个实例。
公式从左开始提取 9 个字符。
使用嵌套函数 SEARCH 查找 num_chars 的值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (5)加 1 可获取字符在第一个空格 (K) 后的位置。 结果是您要开始搜索空间的第二个实例的字符编号。 (5 + 1 = 6)
在 A2 中搜索第二个空格实例,从步骤 2 中找到的 K (第六个位置开始) 。 结果是 LEFT 从文本字符串中提取的字符数。 (9)
中间名
中间名从 D) (第十个位置开始,到第三个空格) (第十二个位置结束。 此公式涉及嵌套 SEARCH 以查找空间的第一个、第二个和第三个实例。
公式从中间提取两个字符,从第十个位置开始。
使用嵌套的 SEARCH 函数查找start_num值:
在 A2 中搜索第一个空格的数值位置(从左侧第一个字符开始)。 (5)加 1 以获取第一个空格 (K) 之后的字符。 结果是要从其开始搜索第二个空格的字符编号。 (5 + 1 = 6)
从步骤 2 中找到的第 6 个位置 (K) 开始,搜索 A2 中第二个空间实例的位置。 结果是 LEFT 从左侧提取的字符数。 (9)
加 1 可获取 D) (第二个空格后的字符。 结果是中间名的起始位置。 (9 + 1 = 10)
使用嵌套函数 SEARCH 查找 num_chars 的值:
在 D) (第 2 个空格后搜索字符的数字位置。 结果是您开始搜索第三个空格的字符编号。 (10)从左侧开始搜索 A2 中第三个空格的数字位置。 结果是中间名的结尾位置。 (12)
在 D) (第 2 个空格后搜索字符的数字位置。 结果是中间名的开头位置。 (10)
取步骤 6 中找到的第三个空格的字符编号,减去步骤 7 中找到的“D”的字符编号。 结果是从文本字符串 MID 从步骤 4 中找到的第十个位置开始提取的字符数。 (12 - 10 = 2)
姓氏
姓氏从右起八个字符开始。 此公式涉及嵌套 SEARCH 以查找位于第五、第九和第十二个位置的第一个、第二个和第三个空间实例。
公式从右侧提取八个字符。
使用嵌套的 SEARCH 和 LEN 函数查找num_chars值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (5)加 1 以获取第一个空格 (K) 之后的字符。 结果是您要开始搜索空格的字符编号。 (5 + 1 = 6)
在 A2 中搜索第二个空格,从步骤 2 中找到的第六位 K (开始) 。 (9)
加 1 以获取字符在第二个空格 (D) 后的位置。 结果是中间名的起始位置。 (9 + 1 = 10)
从左侧开始搜索 A2 中第三个空格的数字位置。 结果是中间名的结尾位置。 (12)
计算 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) ) |
| 公式 | 结果 (姓氏) |
| 右 (A2,LEN (A2) -SEARCH (“ ”,A2,1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,1) ) |
名字
第一个名称从 P) 左 (第一个字符开始,到第一个空格) (第六个字符结尾。 公式从左侧提取六个字符。
使用 Search 函数查找num_chars值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (6)姓氏
姓氏从右 (B) 开始 17 个字符,以右 (S) 的第一个字符结尾。 公式从右侧提取十七个字符。
使用 LEN 和 SEARCH 函数查找num_chars值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (6)计算 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) -SEARCH (“ ”,A2,1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,1) ) |
名字
第一个名称从 J) 左 (第一个字符开始,到第一个空格) (第八个字符结尾。 公式从左侧提取六个字符。
使用函数 SEARCH 查找 num_chars 的值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (6)姓氏
姓氏从右 (v) 的第九个字符开始,到右 (n) 的第一个字符结束。 公式从全名右侧提取 9 个字符。
使用 LEN 和 SEARCH 函数查找num_chars值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (6)计算 A2 中文本字符串的总长度,然后减去从左侧到步骤 1 中找到的第一个空格的字符数。 其结果是要从全名的右侧提取的字符数。 (15 - 6 = 9)
示例 8:Bacon Jr.、Dan K.
在此示例中,姓氏排在前面,后跟后缀。 逗号将姓氏和后缀与名字和中间名首字母分隔开来。
复制表中的单元格,然后粘贴到单元格 A1 的 Excel 工作表中。 将显示左侧的公式以供参考,而 Excel 会自动将右侧的公式转换为适当的结果。
提示将数据粘贴到工作表中之前,将 A 列和 B 列的列宽设置为 250。
| 示例名称 | 说明 |
|---|---|
| 小培根,丹 K. | 姓氏和后缀排在前面,加上逗号 |
| 公式 | 结果 (名字) |
| '=MID (A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) | =MID (A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) |
| 公式 | 结果 (中间初始) |
| '=RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) +1) ) |
| 公式 | 结果 (姓氏) |
| '=LEFT (A2, SEARCH (“ ”,A2,1) ) | =LEFT (A2, SEARCH (“ ”,A2,1) ) |
| 公式 | 后缀) (结果 |
| '=MID (A2,SEARCH (“ ”, A2,1) +1, (SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) -2) -SEARCH (“ ”,A2,1) ) | =MID (A2,SEARCH (“ ”, A2,1) +1, (SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) -2) -SEARCH (“ ”,A2,1) ) |
名字
第一个名称以 D) (第十二个字符开头,以第三个空格) (第 15 个字符结尾。 公式从第 12 个位置开始提取三个字符。
使用嵌套的 SEARCH 函数查找start_num值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (6)加 1 可获取 J) (第一个空格后的字符。 结果是要从其开始搜索第二个空格的字符编号。 (6 + 1 = 7)
从步骤 2 中找到的 J) (第七个位置开始,在 A2 中搜索第二个空格。 (11)
加 1 可获取 D) (第二个空格后的字符。 结果是名字的起始位置。 (11 + 1 = 12)
使用嵌套函数 SEARCH 查找 num_chars 的值:
在 D) (第 2 个空格后搜索字符的数字位置。 结果是您开始搜索第三个空格的字符编号。 (12)从左侧开始搜索 A2 中第三个空格的数字位置。 结果是名字的结尾位置。 (15)
在 D) (第 2 个空格后搜索字符的数字位置。 结果是名字的起始位置。 (12)
取步骤 6 中找到的第三个空格的字符编号,减去步骤 7 中找到的“D”的字符编号。 结果是从第 12 个位置开始的文本字符串 MID 提取的字符数,如步骤 4 中找到。 (15 - 12 = 3)
中间名
中间名以右起第二个字符开头 (K) 。 公式从右侧提取两个字符。
从左侧开始搜索 A2 中第一个空格的数字位置。 (6)
加 1 可获取 J) (第一个空格后的字符。 结果是要从其开始搜索第二个空格的字符编号。 (6 + 1 = 7)
从步骤 2 中找到的 J) (第七个位置开始,在 A2 中搜索第二个空格。 (11)
加 1 可获取 D) (第二个空格后的字符。 结果是名字的起始位置。 (11 + 1 = 12)
从左侧开始搜索 A2 中第三个空格的数字位置。 结果是中间名的结尾位置。 (15)
计算 A2 中文本字符串的总长度,然后从左侧到步骤 5 中找到的第三个空格减去字符数。 其结果是要从全名的右侧提取的字符数。 (17 - 15 = 2)
姓氏
姓氏从 B) 左起 (第一个字符开始,到第一个空格) (第六个字符结束。 因此,公式从左侧提取六个字符。
使用函数 SEARCH 查找 num_chars 的值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (6)后缀
后缀从 J) 左起第七个字符 (开始,到左侧 (.) 的第九个字符结束。 公式从第七个字符开始提取三个字符。
使用函数 SEARCH 查找 start_num 的值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (6)加 1 可获取 J) (第一个空格后的字符。 结果是后缀的起始位置。 (6 + 1 = 7)
使用嵌套函数 SEARCH 查找 num_chars 的值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (6)加 1 可获取字符在第一个空格 (J) 后的数字位置。 结果是要从其开始搜索第二个空格的字符编号。 (7)
搜索 A2 中第二个空格的数字位置,从步骤 4 中找到的第七个字符开始。 (11)
从步骤 4 中找到的第二个空格的字符号中减去 1,得到“,”的字符号。 结果是后缀的结束位置。 (11 - 1 = 10)
搜索第一个空格的数字位置。 (6)
找到第一个空格后,添加 1 以查找 J) (下一个字符,该字符也在步骤 3 和 4 中找到。 (7)
取步骤 6 中找到的“”的字符编号,减去步骤 3 和 4 中找到的“J”的字符编号。 结果是从步骤 2 中找到的第七个位置开始的文本字符串 MID 提取的字符数。 (10 - 7 = 3)
示例 9:加里·奥特曼三世
在此示例中,名字位于字符串的开头,后缀位于字符串的末尾,因此可以使用类似于示例 2 的公式:使用 LEFT 函数提取名字,使用 MID 函数提取姓氏,使用 RIGHT 函数提取后缀。
复制表中的单元格,然后粘贴到单元格 A1 的 Excel 工作表中。 将显示左侧的公式以供参考,而 Excel 会自动将右侧的公式转换为适当的结果。
提示将数据粘贴到工作表中之前,将 A 列和 B 列的列宽设置为 250。
| 示例名称 | 说明 |
|---|---|
| 加里·奥特曼三世 | 名字和姓氏带有后缀 |
| 公式 | 结果 (名字) |
| '=LEFT (A2, SEARCH (“ ”,A2,1) ) | =LEFT (A2, SEARCH (“ ”,A2,1) ) |
| 公式 | 结果 (姓氏) |
| '=MID (A2,SEARCH (“ ”,A2,1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) - (SEARCH (“ ”,A2,1) +1) ) | =MID (A2,SEARCH (“ ”,A2,1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) - (SEARCH (“ ”,A2,1) +1) ) |
| 公式 | 后缀) (结果 |
| '=RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) |
名字
第一个名称从 G) 左 (第一个字符开始,到第一个空格) (第五个字符结束。 因此,该公式从全名左侧提取五个字符。
从左侧开始搜索 A2 中第一个空格的数字位置。 (5)
姓氏
姓氏从 A) 左 (第六个字符开始,到第二个空格) (第 11 个字符结束。 此公式涉及嵌套 SEARCH 以查找空格的位置。
公式从中间提取六个字符,从第六个字符开始。
使用函数 SEARCH 查找 start_num 的值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (5)添加 1 可获取字符在第一个空格 (A) 后的位置。 结果是姓氏的起始位置。 (5 + 1 = 6)
使用嵌套函数 SEARCH 查找 num_chars 的值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (5)添加 1 可获取字符在第一个空格 (A) 后的位置。 结果是要从其开始搜索第二个空格的字符编号。 (5 + 1 = 6)
从步骤 4 中找到的第六个字符开始,在 A2 中搜索第二个空格的数字位置。 此字符编号是姓氏的结束位置。 (12)
搜索第一个空格的数字位置。 (5)
加 1 以查找字符在第一个空格 (A) 之后的数字位置,这也在步骤 3 和 4 中找到。 (6)
取步骤 5 中找到的第二个空格的字符编号,然后减去步骤 6 和 7 中找到的“A”的字符编号。 结果是从文本字符串 MID 提取的字符数,从步骤 2 中找到的第六个位置开始。 (12 - 6 = 6)
后缀
后缀从右起三个字符开始。 此公式涉及嵌套 SEARCH 以查找空格的位置。
使用嵌套的 SEARCH 和 LEN 函数查找num_chars值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (5)加 1 可获取第一个空格 (A) 之后的字符。 结果是要从其开始搜索第二个空格的字符编号。 (5 + 1 = 6)
在 A2 中搜索第二个空格,从步骤 2 中找到的 A) (第六个位置开始。 (12)
计算 A2 中文本字符串的总长度,然后从左侧到步骤 3 中找到的第 2 个空格减去字符数。 其结果是要从全名的右侧提取的字符数。 (15 - 12 = 3)
示例 10:Ryan Ihrig 先生
在此示例中,全名前面加上前缀,并且使用类似于示例 2 的公式:用于提取名字的 MID 函数,用于提取姓氏的 RIGHT 函数。
复制表中的单元格,然后粘贴到单元格 A1 的 Excel 工作表中。 将显示左侧的公式以供参考,而 Excel 会自动将右侧的公式转换为适当的结果。
提示将数据粘贴到工作表中之前,将 A 列和 B 列的列宽设置为 250。
| 示例名称 | 说明 |
|---|---|
| Ryan Ihrig 先生 | 带前缀 |
| 公式 | 结果 (名字) |
| '=MID (A2,SEARCH (“ ”,A2,1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) - (SEARCH (“ ”,A2,1) +1) ) | =MID (A2,SEARCH (“ ”,A2,1) +1,SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) - (SEARCH (“ ”,A2,1) +1) ) |
| 公式 | 结果 (姓氏) |
| '=RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,SEARCH (“ ”,A2,1) +1) ) |
名字
第一个名称从 R) 左 (第五个字符开始,到第二个空格) (第九个字符结尾。 公式嵌套 SEARCH 以查找空格的位置。 它从第五个位置开始提取四个字符。
使用 SEARCH 函数查找start_num值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (4)加 1 以获取字符在第一个空格后的位置 (R) 。 结果是名字的起始位置。 (4 + 1 = 5)
使用嵌套 SEARCH 函数查找num_chars值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (4)加 1 以获取字符在第一个空格后的位置 (R) 。 结果是要从其开始搜索第二个空格的字符编号。 (4 + 1 = 5)
搜索 A2 中第二个空格的数字位置,从步骤 3 和 4 中找到的第五个字符开始。 此字符编号是名字的结尾位置。 (9)
搜索第一个空格。 (4)
加 1 以查找字符在第一个空格后 (R) 后的数字位置,这也在步骤 3 和 4 中找到。 (5)
获取步骤 5 中找到的第二个空格的字符编号,然后减去步骤 6 和 7 中找到的“R”的字符编号。 结果是从文本字符串 MID 中提取的字符数,从步骤 2 中找到的第五个位置开始。 (9 - 5 = 4)
姓氏
姓氏从右起五个字符开始。 此公式涉及嵌套 SEARCH 以查找空格的位置。
使用嵌套的 SEARCH 和 LEN 函数查找num_chars值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (4)加 1 以获取字符在第一个空格后的位置 (R) 。 结果是要从其开始搜索第二个空格的字符编号。 (4 + 1 = 5)
在 A2 中搜索第二个空格,从步骤 2 中找到的 R) (第五个位置开始。 (9)
计算 A2 中文本字符串的总长度,然后从左侧到步骤 3 中找到的第 2 个空格减去字符数。 其结果是要从全名的右侧提取的字符数。 (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) -SEARCH (“ ”,A2,1) ) | =RIGHT (A2,LEN (A2) -SEARCH (“ ”,A2,1) ) |
名字
第一个名称从左起第一个字符开始,到第一个空格) (第六个位置结束。 公式从左侧提取六个字符。
使用 SEARCH 函数查找 num_chars 的值:
从左侧开始搜索 A2 中第一个空格的数字位置。 (6)姓氏
整个姓氏从右 (T) 开始十个字符,到右 (r) 的第一个字符结束。
使用 LEN 和 SEARCH 函数查找num_chars值:
在 A2 中搜索空格的数字位置,从左起第一个字符开始。 (6)计算要提取的文本字符串的总长度,然后从左侧到步骤 1 中找到的第一个空格减去字符数。 (16 - 6 = 10)