使用函數將文字分割成不同的欄

使用函數將文字分割成不同的欄

你可以使用左、中、右、搜尋和 LEN 文字功能來操作資料中的文字字串。 例如,你可以將同一個儲存格中的名字、中間名和姓氏分配到三個獨立欄位。

用文字函式分配名稱元件的關鍵在於每個字元在文字串中的位置。 文字串中空格的位置也很重要,因為它們指示字串中名稱組成部分的開頭或結尾。

例如,儲存格只包含名字和姓氏時,姓氏的開頭會在第一個空格實例的後面。 您清單中的某些名稱可能會含有中間名,在此情況下,姓氏的開頭會在第二個空格實例的後面。

本文將教你如何利用這些實用函式,從各種名稱格式中擷取各種元件。 你也可以用「將文字轉換成欄位」精靈將文字拆分成不同的欄位

範例名稱

描述

名字

中間名

姓氏

後稱謂

1

Jeff Smith

無中間名

Jeff

Smith

2

Eric S. Kurjan

有一個中間名縮寫

Eric

S.

Kurjan

3

Janaina B. G. Bueno

有兩個中間名縮寫

Janaina

B. G.

Bueno

4

Kahn, Wendy Beth

姓氏置前,姓氏後有逗號

Wendy

Beth

Kahn

5

Mary Kay D. Andersen

由兩個部分組成的名字

Mary Kay

D.

Andersen

6

Paula Barreto de Mattos

由三個部分組成的姓氏

Paula

Barreto de Mattos

7

James van Eaton

由兩個部分組成的姓氏

James

van Eaton

8

Bacon Jr., Dan K.

姓氏和後稱謂放在前面,後稱謂的後面有逗號

Dan

K.

Bacon

Jr.

9

Gary Altman III

含有後稱謂

Gary

Altman

III

10

Mr. Ryan Ihrig

含有前稱謂

Ryan

Ihrig

11

Julie Taft-Rider

以連字號連接的姓氏

Julie

Taft-Rider

注意

在以下範例的圖形中,全名的重點顯示了匹配的 SEARCH 公式所尋找的字元。

範例一:分離傑夫與史密斯

這個例子將名字和姓氏分為兩個組成部分。 兩個名字之間只隔一個空格。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

Jeff Smith

無中間名

公式

結果 (名字)

'=左 (A2,搜尋 (“ ”,A2,1) )

=LEFT(A2, SEARCH(" ",A2,1))

公式

結果 (姓氏)

'=右 (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 得出之第一個空格左邊的字元數。

範例二:Eric S. Kurjan:擷取名字與姓氏,加上中間名首字母

此範例使用名字、中間名首字母和姓氏。 每個名稱元件之間以空格分隔。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

Eric S. Kurjan

有一個中間名縮寫

公式

結果 (名字)

'=左 (A2,搜尋 (“ ”,A2,1) )

=LEFT(A2, SEARCH(" ",A2,1))

公式

結果 (中間的初始)

'=中 (A2,搜尋 (“ ”,A2,1) +1,搜尋 (“ ”,A2,搜尋 (“ ”,A2,1) +1) -搜尋 (“ ”,A2,1) )

=MID(A2,SEARCH(" ",A2,1)+1,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-SEARCH(" ",A2,1))

公式

現場結果 (姓氏)

'=右 (A2,LEN (A2) -搜尋 (“ ”,A2,搜尋 (“ ”,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 得出之第一個空格的字元數。 結果得出 MID 從文字字串所擷取的字元數,從步驟 2 得出之第六個位置開始算起。 (8 – 5 = 3)

姓氏

姓氏的開頭是從右邊數來的第六個字元 (K),結尾是右邊數來的第一個字元 (n)。 此公式使用巢狀 SEARCH 函數,尋找第二個及第三個空格實例 (即是從左邊數來的第五個和第八個位置)。

公式擷取的是 A2 裡從右邊開始算起的六個字元。

使用 LEN 及巢狀 SEARCH 函數尋找 num_chars 的值:

在 A2 中搜尋空格的數值位置,從左邊第一個字元開始算起。 (5)

加 1 可得出第一個空格後的字元 (S) 位置。 結果得出一字元數,可從該字元數位置開始搜尋第二個空格實例。 (5 + 1 = 6)

在 A2 中搜尋第二個空格實例,從步驟 2 得出之第六個位置 (S) 開始算起。 此字元數是中間名的結尾位置。 (8)

計算 A2 中文字字串的總長度,然後減去步驟 3 得出之從左邊算到第二個空格實例的字元數。 結果得出從全名右邊所擷取的字元數。 (14 – 8 = 6) 。

範例 3:Janaina B. G. Bueno

這裡有一個如何提取中間名縮寫的範例。 名稱元件是由第一個和第三個空格實例分隔。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

Janaina B. G. Bueno

有兩個中間名縮寫

公式

結果 (名字)

'=左 (A2,搜尋 (“ ”,A2,1) )

=LEFT(A2, SEARCH(" ",A2,1))

公式

結果 (中間名縮寫)

'=中 (A2,搜尋 (“ ”,A2,1) +1,搜尋 (“ ”,A2,搜尋 (“ ”,A2,搜尋 (“ ”,A2,1) +1) +1) -搜尋 (“ ”,A2,1) )

=MID(A2,SEARCH(" ",A2,1)+1,SEARCH(" ",A2,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)+1)-SEARCH(" ",A2,1))

公式

現場結果 (姓氏)

'=右 (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 得出之第九個位置 (B) 開始算起。 (11) 。

加 1 可得出第一個空格後的字元 (G) 位置。 這個字元數是一起始位置,您從這裡開始搜尋第三個空格。 (11 + 1 = 12)

在 A2 中搜尋第三個空格,從步驟 6 得出之第十二個位置開始算起。 (14)

在 A2 中搜尋第一個空格的數值位置。 (8)

用步驟 7 得出之第三個空格之字元數,減去步驟 6 得出之第一個空格的字元數。 結果得出 MID 從文字字串擷取的字元數,從步驟 2 得出之第九個位置開始算起。

姓氏

姓氏的開頭是從右邊數來的第五個字元 (B),結尾是右邊數來的第一個字元 (o)。 此公式使用巢狀 SEARCH 函數,尋找第一個、第二個和第三個空格實例。

公式會擷取 A2 裡從全名的右邊開始算起的五個字元。

使用巢狀 SEARCH 及 LEN 函數尋找 num_chars 的值:

在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。 (8)

加 1 可得出第一個空格後的字元 (B) 位置。 結果得出一字元數,可從該字元數位置開始搜尋第二個空格實例。 (8 + 1 = 9)

在 A2 中搜尋第二個空格,從步驟 2 得出之第九個位置 (B) 開始算起。 (11)

加 1 可得出第一個空格後的字元 (G) 位置。 這個字元數是一起始位置,您從這裡開始搜尋第三個空格實例。 (11 + 1 = 12)

在 A2 中搜尋第三個空格,從步驟 6 得出之第十二個位置開始算起。 (14)

計算 A2 裡文字字串的總長度,然後減去步驟 5 得出之從左邊算到第三個空格的字元數。 結果得出從全名右邊所擷取的字元數。 (19 - 14 = 5)

範例 4:Kahn, Wendy Beth

在此範例中,姓氏在名字之前,而中間名出現在最後面。 逗號代表姓氏的結尾,每個名稱元件之間以空格分隔。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

Kahn, Wendy Beth

姓氏置前,姓氏後有逗號

公式

結果 (名字)

'=中 (A2,搜尋 (“ ”,A2,1) +1,搜尋 (“ ”,A2,搜尋 (“ ”,A2,1) +1) -搜尋 (“ ”,A2,1) )

=MID(A2,SEARCH(" ",A2,1)+1,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-SEARCH(" ",A2,1))

公式

結果 (中間名)

'=右 (A2,LEN (A2) -搜尋 (“ ”,A2,搜尋 (“ ”,A2,1) +1) )

=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,SEARCH(" ",A2,1)+1))

公式

現場結果 (姓氏)

'=左 (A2,搜尋 (“ ”,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 得出之第七個位置 (W) 開始算起。 (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 D. Andersen

這個例子使用了兩個名字,Mary Kay。 由第二個和第三個空格分隔每個名稱元件。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

Mary Kay D. Andersen

由兩個部分組成的名字

公式

結果 (名字)

左 (A2,搜尋 (“ ”,A2,搜尋 (“ ”,A2,1) +1) )

=LEFT(A2, SEARCH(" ",A2,SEARCH(" ",A2,1)+1))

公式

結果 (中間的初始)

'=中 (A2,搜尋 (“ ”,A2,搜尋 (“ ”,A2,1) +1) +1,搜尋 (“ ”,A2,搜尋 (“ ”,A2,搜尋 (“ ”,A2,1) +1) +1) - (搜尋 (“ ”,A2,搜索 (“ ”,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))

公式

現場結果 (姓氏)

'=右 (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 函數,尋找左邊數來的第二個空格實例。

公式擷取的是從左邊開始算起的九個字元。

使用巢狀 SEARCH 函數尋找 num_chars 的值:

在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。 (5)

加 1 可得出第一個空格後的字元 (K) 位置。 結果得出一字元數,可從該字元數位置開始搜尋第二個空格實例。 (5 + 1 = 6)

在 A2 中搜尋第二個空格實例,從步驟 2 得出之第六個位置 (S) 開始算起。 結果得出 LEFT 從文字字串所擷取的字元數。 (9)

中間名

中間名的開頭是第十個位置 (D),結尾是第十二個位置 (即第三個空格)。 此公式使用巢狀 SEARCH 函數,尋找第一個、第二個和第三個空格實例。

公式擷取的是從第十個位置開始算起的中間兩個字元。

使用巢狀 SEARCH 函數尋找 start_num 的值:

在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。 (5)

加 1 可得出第一個空格後的字元 (K) 位置。 結果得出一字元數,可從該字元數位置開始搜尋第二個空格。 (5 + 1 = 6)

在 A2 中搜尋第二個空格實例的位置,從步驟 2 得出之第六個位置 (K) 開始算起。 結果得出 LEFT 從左邊所擷取的字元數。 (9)

加 1 可得出第二個空格後的字元 (D) 位置。 結果得出中間名的起始位置。 (9 + 1 = 10)

使用巢狀 SEARCH 函數尋找 num_chars 的值:

搜尋第二個空格後之字元 (D) 的數值位置。 結果得出一字元數,可從該字元數位置開始搜尋第三個空格。 (10)

在 A2 中搜尋第三個空格的數值位置,從左邊開始算起。 結果得出中間名的結尾位置。 (12)

搜尋第二個空格後之字元 (D) 的數值位置。 結果得出中間名的起始位置。 (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。 第一個空格代表名字的結尾與姓氏的開頭。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

Paula Barreto de Mattos

由三個部分組成的姓氏

公式

結果 (名字)

'=左 (A2,搜尋 (“ ”,A2,1) )

=LEFT(A2, SEARCH(" ",A2,1))

公式

結果 (姓氏)

右 (A2,LEN (A2) -搜尋 (“ ”,A2,1) )

=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,1))

名字

名字的開頭是從左邊數來的第一個字元 (P),結尾是第六個字元 (即第一個空格)。 公式擷取的是從左邊算起的六個字元。

使用 Search 函數尋找 num_chars 的值:

在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。 (6)

姓氏

姓氏的開頭是從右邊數來的第十七個字元 (B),結尾是右邊數來的第一個字元 (s)。 公式擷取的是從右邊開始算起的十七個字元。

使用 LEN 及 SEARCH 函數尋找 num_chars 的值:

在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。 (6)

計算 A2 裡文字字串的總長度,然後減去步驟 1 得出之從左邊算到第一個空格的字元數。 結果得出從全名右邊所擷取的字元數。 (23 - 6 = 17)

範例 7:James van Eaton

這個例子使用了兩部分的姓氏:van Eaton。 第一個空格代表名字的結尾與姓氏的開頭。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

James van Eaton

由兩個部分組成的姓氏

公式

結果 (名字)

'=左 (A2,搜尋 (“ ”,A2,1) )

=LEFT(A2, SEARCH(" ",A2,1))

公式

結果 (姓氏)

'=右 (A2,LEN (A2) -SEARCH (“ ”,A2,1) )

=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,1))

名字

名字的開頭是從左邊數來的第一個字元 (J),結尾是第八個字元 (即第一個空格)。 公式擷取的是從左邊算起的六個字元。

使用 SEARCH 函數尋找 num_chars 的值:

在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。 (6)

姓氏

姓氏的開頭是從右邊數來的第九個字元 (v),結尾是右邊數來的第一個字元 (n)。 公式擷取的是從全名的右邊開始算起的九個字元。

使用 LEN 及 SEARCH 函數尋找 num_chars 的值:

在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。 (6)

計算 A2 裡文字字串的總長度,然後減去步驟 1 得出之從左邊算到第一個空格的字元數。 結果得出從全名右邊所擷取的字元數。 (15 - 6 = 9)

範例 8:Bacon Jr., Dan K.

在此範例中,姓氏在最前面,後面接的是後稱謂。 姓氏和後稱謂,名字和中間名縮寫,則是以逗號隔開。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

Bacon Jr., Dan K.

姓氏和後稱謂放在前面,後稱謂的後面有逗號

公式

結果 (名字)

'=中 (A2,搜尋 (“ ”,A2,搜尋 (“ ”,A2,1) +1) +1,搜尋 (“ ”,A2,搜尋 (“ ”,A2,搜尋 (“ ”,A2,1) +1) +1) -搜尋 (“ ”,A2,搜尋 (“ ”,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))

公式

結果 (中間的初始)

'=右 (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))

公式

結果 (姓氏)

'=左 (A2,搜尋 (“ ”,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),結尾是第十五個字元 (即第三個空格)。 公式擷取的是從第十二個位置開始算起的三個字元。

使用巢狀 SEARCH 函數尋找 start_num 的值:

在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。 (6)

加 1 可得出第一個空格後的字元 (J) 位置。 結果得出一字元數,可從該字元數位置開始搜尋第二個空格。 (6 + 1 = 7)

在 A2 中搜尋第二個空格,從步驟 2 得出之第七個位置 (J) 開始算起。 (11)

加 1 可得出第二個空格後的字元 (D) 位置。 結果得出名字的起始位置。 (11 + 1 = 12)

使用巢狀 SEARCH 函數尋找 num_chars 的值:

搜尋第二個空格後之字元 (D) 的數值位置。 結果得出一字元數,可從該字元數位置開始搜尋第三個空格。 (12)

在 A2 中搜尋第三個空格的數值位置,從左邊開始算起。 結果得出名字的結尾位置。 (15)

搜尋第二個空格後之字元 (D) 的數值位置。 結果得出名字的起始位置。 (12)

用步驟 6 得出之第三個空格之字元數,減去步驟 7 得出之 "D" 的字元數。 結果得出 MID 從文字字串擷取的字元數,從步驟 4 得出之第十二個位置開始算起。 (15 - 12 = 3)

中間名

中間名的開頭是從右邊數來的第二個字元 (K)。 公式擷取的是從右邊開始算起的兩個字元。

在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。 (6)

加 1 可得出第一個空格後的字元 (J) 位置。 結果得出一字元數,可從該字元數位置開始搜尋第二個空格。 (6 + 1 = 7)

在 A2 中搜尋第二個空格,從步驟 2 得出之第七個位置 (J) 開始算起。 (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" 的字元數。 結果得出 MID 從文字字串擷取的字元數,從步驟 2 得出之第七個位置開始算起。 (10 - 7 = 3)

範例 9:Gary Altman III

在這個例子中,名字放在字串開頭,後綴在最後,所以你可以用類似範例二的公式:用 LEFT 函式擷取名字,MID 函式提取姓氏,RIGHT 函式提取字尾。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

Gary Altman III

名字與姓氏後綴

公式

結果 (名字)

'=左 (A2,搜尋 (“ ”,A2,1) )

=LEFT(A2, SEARCH(" ",A2,1))

公式

結果 (姓氏)

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

=MID(A2,SEARCH(" ",A2,1)+1,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-(SEARCH(" ",A2,1)+1))

公式

結果 (後綴)

'=右 (A2,LEN (A2) -搜尋 (“ ”,A2,搜尋 (“ ”,A2,1) +1) )

=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,SEARCH(" ",A2,1)+1))

名字

名字的開頭是從左邊數來的第一個字元 (G),結尾是第五個字元 (即第一個空格)。 因此,公式擷取的是從全名的左邊開始算起的五個字元。

在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。 (5)

姓氏

姓氏的開頭是從左邊數來的第六個字元 (A),結尾是第十一個字元 (即第二個空格)。 此公式使用巢狀 SEARCH 函數,尋找空格的位置。

公式擷取的是從第六個字元開始算起的中間六個字元。

使用 SEARCH 函數尋找 start_num 的值:

在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。 (5)

加 1 可得出第一個空格後的字元 (A) 位置。 結果得出姓氏的起始位置。 (5 + 1 = 6)

使用巢狀 SEARCH 函數尋找 num_chars 的值:

在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。 (5)

加 1 可得出第一個空格後的字元 (A) 位置。 結果得出一字元數,可從該字元數位置開始搜尋第二個空格。 (5 + 1 = 6)

在 A2 中搜尋第二個空格的數值位置,從步驟 4 得出之第六個字元開始算起。 此字元數是姓氏的結尾位置。 (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 得出之從左邊算到第二個空格的字元數。 結果得出從全名右邊所擷取的字元數。 (15 - 12 = 3)

範例 10:Mr. Ryan Ihrig

在這個例子中,全名前面會加上前綴,並使用類似範例二的公式:MID 函數提取名字,RIGHT 函數提取姓氏。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

Mr. Ryan Ihrig

含有前稱謂

公式

結果 (名字)

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

=MID(A2,SEARCH(" ",A2,1)+1,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-(SEARCH(" ",A2,1)+1))

公式

結果 (姓氏)

'=右 (A2,LEN (A2) -搜尋 (“ ”,A2,搜尋 (“ ”,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 得出之從左邊算到第二個空格的字元數。 結果得出從全名右邊所擷取的字元數。 (14 - 9 = 5)

範例 11:Julie Taft-Rider

這個例子使用了連字號的姓氏。 每個名稱元件之間以空格分隔。

複製表格中的儲存格,並貼到 Excel 工作表的 A1 格。 你看到左邊的公式會顯示出來供參考,而 Excel 會自動將右邊的公式轉換成相應的結果。

提示 在將資料貼上工作表之前,先將 A 和 B 欄的欄寬設為 250。

範例名稱

描述

Julie Taft-Rider

以連字號連接的姓氏

公式

結果 (名字)

'=左 (A2,搜尋 (“ ”,A2,1) )

=LEFT(A2, SEARCH(" ",A2,1))

公式

結果 (姓氏)

'=右 (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)

另請參閱

TEXTSPLIT 函數

TEXTBEFORE 函數

TEXTAFTER 函數

使用資料剖析精靈將文字分割成不同的欄

相关推荐