関数を含む別の列にテキストを分割します。

関数を含む別の列にテキストを分割します。

重要:  この記事は機械翻訳されています。機械翻訳についての「免責事項」をお読みください。この記事の英語版を参照するには、ここをクリックしてください。

LEFT、MID、RIGHT、SEARCH、および LEN の各テキスト関数を使用すると、データ内のテキストの文字列を操作できます。たとえば、1 つのセルの名、ミドル ネーム、および姓を 3 つの別々の列に分割できます (英語名の場合)。

文字列関数を使用して名前の構成要素を分割するときの鍵となるのは、文字列中の各文字の位置です。文字列に含まれている名前の構成要素の開始位置や終了位置はスペースによって表されるため、文字列中のスペースの位置が重要になります。

たとえば、名と姓だけが入力されているセルでは、最初のスペースの後から姓が始まります。名前によってはミドル ネームが含まれていることもあり、その場合は 2 つ目のスペースの後から姓が始まります。

この記事では、さまざまな形式の名前から、次の便利な関数を使用して、さまざまな構成要素を抽出する方法を示します。また、区切り位置指定ウィザードを使用して、テキストを別の列に分割します。

名前の例

説明

ミドル ネーム

サフィックス

1

小田

ミドル ネームなし

Jeff

Smith

2

Eric %s Kurjan

1 つのミドル ネーム

Eric

S.

Kurjan

3

Janaina B. G. Bueno

2 つのミドル ネーム

Janaina

B. G.

Bueno

4

Kahn, Wendy Beth

姓をコンマ付きで最初に表記

Wendy

Beth

Kahn

5

Mary kay という D. Andersen

2 つの部分から成る名

Mary Kay

D.

Andersen

6

Paula Barreto de Mattos

3 つの部分から成る姓

Paula

Barreto de Mattos

7.

James van Eaton

2 つの部分から成る姓

James

van Eaton

8

Bacon jr., Dan の K

姓と接尾辞をコンマ付きで最初に表記

Dan

K.

Bacon

Jr.

9

Gary Altman III

接尾辞付き

Gary

Altman

III

10

氏直紀 Ihrig

敬称付き

Ryan

Ihrig

11

Julie Taft-rider

ハイフン付きの姓

Julie

Taft-Rider

注: 以下の画像の例で強調表示されている氏名の部分は、対応する SEARCH 式によって検索される文字列を示します。

この例では、名と姓の 2 つの構成要素を分割します。名前の 2 つの構成要素は、1 つのスペースで区切られます。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は 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))

  1. 名は、文字列の先頭の文字 (J) から始まり、5 文字目 (スペース) で終わります。次の式は、セル A2 の左から 5 文字を返します。

    名を抽出する数式

    SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれるスペースの位置を左から検索します。

  2. 姓は、右から 5 文字目のスペースから始まり、右端の最後の文字 (h) で終わります。次の式は、A2 の右から 5 文字を抽出します。

    姓を抽出するための式

    SEARCH 関数と LEN 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれるスペースの位置を左から検索します (5)。

  3. 文字列全体の長さを取得し、その文字数と、手順 1. で検索した最初のスペースまでの左からの文字数との差を求めます。

この例では、名、ミドルネームおよび姓を使用します。名前の各構成要素は、スペースによって区切られます。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は Excel が右の式を適切な結果に自動変換する間の参照用です。

ヒント    データをワークシートに貼り付ける前に、列 A と B の列幅を 250 に設定します。

名前の例

説明

Eric S. Kurjan

1 つのミドル ネーム

結果 (名)

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

  1. 名は、左端の先頭の文字 (E) から始まり、5 文字目 (最初のスペース) で終わります。次の式は、A2 の左から最初の 5 文字を抽出します。

    最初と最後の名とミドル ネームのイニシャルを分離する数式

    SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれるスペースの位置を左から検索します (5)。

  2. ミドル ネーム

    ミドル ネームは 6 文字目 (S) から始まり、8 文字目 (2 つ目のスペース) で終わります。この式では、2 つ目のスペースを検索するために SEARCH 関数がネストされています。

    次の式は、6 文字目の位置から始まる 3 文字を抽出します。

    名、性、ミドル ネームを分離する数式の詳細

    SEARCH 関数を使用して、"開始位置" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (5)。

  3. 1 を加算して、最初のスペースの次の文字 (S) の位置を取得します。この位置がミドル ネームの開始位置です (5 + 1 = 6)。

    ネストされた SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (5)。

  4. 1 を加算して、最初のスペースの次の文字 (S) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (5 + 1 = 6)。

  5. A2 に含まれる 2 つ目のスペースを、手順 4. で取得した 6 文字目 (S) から検索します。この文字位置がミドル ネームの終了位置です (8)。

  6. A2 に含まれるスペースの位置を、左端の先頭の文字から検索します (5)。

  7. 手順 5. で取得した 2 つ目のスペースの文字位置から、手順 6. で取得した最初のスペースの文字位置を減算します。この結果は、手順 2. で取得した 6 文字目を開始位置として、MID 関数で抽出する文字数を示します (8 - 5 = 3)。

  8. 姓は、右から 6 文字目 (K) から始まり、右端の文字 (n) で終わります。この式では、2 つ目と 3 つ目のスペース (左から 5 文字目および 8 文字目) を検索するために、SEARCH 関数がネストされています。

    次の式は、A2 の右から 6 文字を抽出します。

    姓と名を分離する数式内の 2 番目の SEARCH 関数
  9. LEN 関数およびネストされた SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれるスペースの位置を、左端の先頭の文字から検索します (5)。

  10. 1 を加算して、最初のスペースの次の文字 (S) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (5 + 1 = 6)。

  11. A2 に含まれる 2 つ目のスペースを、手順 2. で取得した 6 文字目 (S) から検索します。この文字位置がミドル ネームの終了位置です (8)。

  12. A2 に含まれる文字列全体の長さを取得し、その文字数と、手順 3. で検索した 2 つ目のスペースまでの左からの文字数との差を求めます。この結果は、氏名から抽出する右からの文字数になります (14 - 8 = 6)。

2 つのミドル ネームを抽出する方法の例を次に示します。名前の構成要素は、最初のスペースと 3 つ目のスペースによって区切られます。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は Excel が右の式を適切な結果に自動変換する間の参照用です。

ヒント    データをワークシートに貼り付ける前に、列 A と B の列幅を 250 に設定します。

名前の例

説明

Janaina B. G. Bueno

2 つのミドル ネームのイニシャル

結果 (名)

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

  1. 名は、左端の先頭の文字 (J) から始まり、8 文字目 (最初のスペース) で終わります。次の表は、A2 の左から最初の 8 文字を抽出します。

    名、性、ミドル ネームのイニシャル 2 文字を分離する数式

    SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (8)。

  2. ミドル ネーム

    ミドル ネームは 9 文字目 (B) から始まり、14 文字目 (3 つ目のスペース) で終わります。この式では、8 文字目、11 文字目、14 文字目にある最初、2 つ目、および 3 つ目のスペースを検索するために、SEARCH 関数がネストされています。

    次の式は、9 文字目の位置から始まる 5 文字を抽出します。

    名、性、ミドル ネームのイニシャル 2 文字を分離する数式

    SEARCH 関数を使用して、"開始位置" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (8)。

  3. 1 を加算して、最初のスペースの次の文字 (B) の位置を取得します。この位置がミドル ネームの開始位置です (8 + 1 = 9)。

    ネストされた SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (8)。

  4. 1 を加算して、最初のスペースの次の文字 (B) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (8 + 1 = 9)。

  5. A2 に含まれる 2 つ目のスペースを、手順 4. で取得した 9 文字目 (B) から検索します (11)。

  6. 1 を加算して、2 つ目のスペースの次の文字 (G) の位置を取得します。この文字位置は、3 つ目のスペースを検索するときの開始位置になります (11 + 1 = 12)。

  7. A2 に含まれる 3 つ目のスペースを、手順 6. で取得した 12 文字目から検索します (14)。

  8. A2 に含まれる最初のスペースの位置を検索します (8)。

  9. 手順 7. で取得した 3 つ目のスペースの文字位置から、手順 6. で取得した最初のスペースの文字位置を減算します。この結果は、手順 2. で取得した 9 文字目を開始位置として、MID 関数で抽出する文字数を示します。

  10. 姓は、右から 5 文字目 (B) から始まり、右端の文字 (o) で終わります。この式では、最初、2 つ目、および 3 つ目のスペースを検索するために、SEARCH 関数がネストされています。

    次の式は、A2 に入力された氏名の右から 5 文字を抽出します。

    名、性、ミドル ネームのイニシャル 2 文字を分離する数式

    ネストされた SEARCH 関数と LEN 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (8)。

  11. 1 を加算して、最初のスペースの次の文字 (B) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (8 + 1 = 9)。

  12. A2 に含まれる 2 つ目のスペースを、手順 2. で取得した 9 文字目 (B) から検索します (11)。

  13. 1 を加算して、2 つ目のスペースの次の文字 (G) の位置を取得します。この結果は、3 つ目のスペースを検索するときの開始位置になります (11 + 1 = 12)。

  14. A2 に含まれる 3 つ目のスペースを、手順 6. で取得した 12 文字目 (G) から検索します (14)。

  15. A2 に含まれる文字列全体の長さを取得し、その文字数と、手順 5. で検索した 3 つ目のスペースまでの左からの文字数との差を求めます。この結果は、氏名から抽出する右からの文字数になります (19 - 14 = 5)。

この例では、姓が名の前に記述され、ミドル ネームが最後になっています。姓の終わりはコンマで表され、名前の各構成要素はスペースで区切られます。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は 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)

  1. 名は、左から 7 文字目 (W) から始まり、12 文字目 (2 つ目のスペース) で終わります。名は氏名の真ん中に現れるため、抽出するには MID 関数を使用する必要があります。

    次の式は、7 文字目の位置から 6 文字を抽出します。

    姓を切り取ってその後に名とミドル ネームが続くようにするための式

    SEARCH 関数を使用して、"開始位置" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (6)。

  2. 1 を加算して、最初のスペースの次の文字 (W) の位置を取得します。この位置が名の開始位置です (6 + 1 = 7)。

    ネストされた SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (6)。

  3. 1 を加算して、最初のスペースの次の文字 (W) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (6 + 1 = 7)。

    A2 に含まれる 2 つ目のスペースを、手順 4. で取得した 7 文字目 (W) から検索します (12)。

  4. A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (6)。

  5. 手順 5. で取得した 2 つ目のスペースの文字位置から、手順 6. で取得した最初のスペースの文字位置を減算します。この結果は、手順 2. で取得した 7 文字目を開始位置として、MID 関数で抽出する文字数を示します (12 - 6 = 6)。

  6. ミドル ネーム

    ミドル ネームは、右から 4 文字目 (B) から始まり、右端の文字 (h) で終わります。この式では、左から 6 文字目と 12 文字目にある最初と 2 つ目のスペースを検索するために、SEARCH 関数がネストされています。

    次の式は、右から 4 文字を抽出します。

    姓を切り取ってその後に名とミドル ネームが続くようにするための式

    ネストされた SEARCH 関数と LEN 関数を使用して、"開始位置" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (6)。

  7. 1 を加算して、最初のスペースの次の文字 (W) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (6 + 1 = 7)。

  8. A2 に含まれる 2 つ目のスペースを、手順 2. で取得した 7 文字目 (W) から検索します (12)。

  9. A2 に含まれる文字列全体の長さを取得し、その文字数と、手順 3. で検索した 2 つ目のスペースまでの左からの文字数との差を求めます。この結果は、氏名から抽出する右からの文字数になります (16 - 12 = 4)。

  10. 姓は、左端の先頭の文字 (K) から始まり、4 文字目 (n) で終わります。次の式は、左から 4 文字を抽出します。

    姓を切り取ってその後に名とミドル ネームが続くようにするための式

    SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (6)。

  11. 2 を減算して、姓の終了文字 (n) の位置を取得します。この結果は、LEFT 関数で抽出する文字数になります (6 - 2 = 4)。

この例では、2 つの部分で構成される名 Mary Kay を使用します。名前の各構成要素は、2 つ目のスペースと 3 つ目のスペースによって区切られます。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は Excel が右の式を適切な結果に自動変換する間の参照用です。

ヒント    データをワークシートに貼り付ける前に、列 A と B の列幅を 250 に設定します。

名前の例

説明

Mary Kay D. Andersen

2 つの部分から成る名

結果 (名)

LEFT(A2, SEARCH(" ",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))

  1. 名は、左端の先頭の文字から始まり、9 文字目 (2 つ目のスペース) で終わります。この式では、左から 2 つ目のスペースを検索するために、SEARCH 関数がネストされています。

    次の式は、左から 9 文字を抽出します。

    名、ミドル ネーム、ミドル ネームのイニシャル、姓を分離する数式

    ネストされた SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (5)。

  2. 1 を加算して、最初のスペースの次の文字 (K) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (5 + 1 = 6)。

  3. A2 に含まれる 2 つ目のスペースを、手順 2. で取得した 6 文字目 (K) から検索します。この結果は、LEFT 関数で文字列から抽出する文字数になります (9)。

  4. ミドル ネーム

    ミドル ネームは 10 文字目 (D) から始まり、12 文字目 (3 つ目のスペース) で終わります。この式では、最初、2 つ目、および 3 つ目のスペースを検索するために、SEARCH 関数がネストされています。

    次の式は、途中の 10 文字目の位置から始まる 2 文字を抽出します。

    名、ミドル ネーム、ミドル ネームのイニシャル、姓を分離する数式

    ネストされた SEARCH 関数を使用して、"開始位置" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を、左端の先頭の文字から検索します (5)。

  5. 1 を加算して、最初のスペースの次の文字 (K) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (5 + 1 = 6)。

  6. A2 に含まれる 2 つ目のスペースの位置を、手順 2. で取得した 6 文字目 (K) から検索します。この結果は、LEFT 関数で抽出する左からの文字数になります (9)。

  7. 1 を加算して、2 つ目のスペースの次の文字 (D) の位置を取得します。この結果がミドル ネームの開始位置になります (9 + 1 = 10)。

    ネストされた SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    2 つ目のスペースの次の文字 (D) の位置を検索します。この結果は、3 つ目のスペースを検索するときの開始位置になります (10)。

  8. A2 に含まれる 3 つ目のスペースの位置を左から検索します。この結果がミドル ネームの終了位置になります (12)。

  9. 2 つ目のスペースの次の文字 (D) の位置を検索します。この結果がミドル ネームの開始位置になります (10)。

  10. 手順 6. で取得した 3 つ目のスペースの文字位置から、手順 7. で取得した "D" の文字位置を減算します。この結果は、手順 4. で取得した 10 文字目を開始位置として、MID 関数で抽出する文字数を示します (12 - 10 = 2)。

  11. 姓は右から 8 文字目から始まります。この式では、5 文字目、9 文字目、12 文字目にある最初、2 つ目、および 3 つ目のスペースを検索するために、SEARCH 関数がネストされています。

    次の式は、右から 8 文字を抽出します。

    名、ミドル ネーム、ミドル ネームのイニシャル、姓を分離する数式

    ネストされた SEARCH 関数と LEN 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (5)。

  12. 1 を加算して、最初のスペースの次の文字 (K) の位置を取得します。この結果は、次のスペースを検索するときの開始位置になります (5 + 1 = 6)。

  13. A2 に含まれる 2 つ目のスペースを、手順 2. で取得した 6 文字目 (K) から検索します (9)。

  14. 1 を加算して、2 つ目のスペースの次の文字 (D) の位置を取得します。この結果がミドル ネームの開始位置になります (9 + 1 = 10)。

  15. A2 に含まれる 3 つ目のスペースの位置を左から検索します。この結果がミドル ネームの終了位置になります (12)。

  16. A2 に含まれる文字列全体の長さを取得し、その文字数と、手順 5. で検索した 3 つ目のスペースまでの左からの文字数との差を求めます。この結果は、氏名から抽出する右からの文字数になります (20 - 12 = 8)。

この例では、姓に Barreto de Mattos という 3 つの部分が含まれています。名の終了位置と姓の開始位は、最初のスペースによって示されます。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は Excel が右の式を適切な結果に自動変換する間の参照用です。

ヒント    データをワークシートに貼り付ける前に、列 A と B の列幅を 250 に設定します。

名前の例

説明

Paula Barreto de Mattos

3 つの部分から成る姓

結果 (名)

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

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

結果 (姓)

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

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

  1. 名は、左端の先頭の文字 (P) から始まり、6 文字目 (最初のスペース) で終わります。次の式は、左から 6 文字を抽出します。

    名と、3 つの部分で構成される姓とを分離する数式

    SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (6)。

  2. 姓は、右から 17 文字目 (B) から始まり、右端の文字 (s) で終わります。次の式は、右から 17 文字を抽出します。

    名と、3 つの部分で構成される姓とを分離する数式

    LEN 関数と SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (6)。

  3. A2 に含まれる文字列全体の長さを取得し、その文字数と、手順 1. で検索した最初のスペースまでの左からの文字数との差を求めます。この結果は、氏名から抽出する右からの文字数になります (23 - 6 = 17)。

この例では、姓に van Eaton という 2 つの部分が含まれています。名の終了位置と姓の開始位置は、最初のスペースによって示されます。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は Excel が右の式を適切な結果に自動変換する間の参照用です。

ヒント    データをワークシートに貼り付ける前に、列 A と B の列幅を 250 に設定します。

名前の例

説明

James van Eaton

2 つの部分から成る姓

結果 (名)

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

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

結果 (姓)

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

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

  1. 名は、左端の先頭の文字 (J) から始まり、6 文字目 (最初のスペース) で終わります。次の式は、左から 6 文字を抽出します。

    名と 2 つの部分で構成される姓とを分離する数式

    SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (6)。

  2. 姓は、右から 9 文字目 (v) で始まり、右端の文字 (n) で終わります。次の式は、氏名の右から 9 文字を抽出します。

    名と 2 つの部分で構成される姓とを分離する数式

    LEN 関数と SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (6)。

  3. A2 に含まれる文字列全体の長さを取得し、その文字数と、手順 1. で検索した最初のスペースまでの左からの文字数との差を求めます。この結果は、氏名から抽出する右からの文字数になります (15 - 6 = 9)。

この例では、姓が最初に記述され、その後に接尾辞が続きます。姓と接尾辞は、コンマによって名とミドル ネームから区切られます。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は Excel が右の式を適切な結果に自動変換する間の参照用です。

ヒント    データをワークシートに貼り付ける前に、列 A と B の列幅を 250 に設定します。

名前の例

説明

Bacon Jr., Dan 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))

  1. 名は 12 文字目 (D) から始まり、15 文字目 (3 つ目のスペース) で終わります。次の式は、12 文字目の位置から始まる 3 文字を抽出します。

    数式を分離する最後の名前し、サフィックスを最初に、カンマで

    ネストされた SEARCH 関数を使用して、"開始位置" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (6)。

  2. 1 を加算して、最初のスペースの次の文字 (J) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (6 + 1 = 7)。

  3. A2 に含まれる 2 つ目のスペースを、手順 2. で取得した 7 文字目 (J) から検索します (11)。

  4. 1 を加算して、2 つ目のスペースの次の文字 (D) の位置を取得します。この結果が名の開始位置になります (11 + 1 = 12)。

    ネストされた SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    2 つ目のスペースの次の文字 (D) の位置を取得します。この結果は、3 つ目のスペースを検索するときの開始位置になります (12)。

  5. A2 に含まれる 3 つ目のスペースの位置を左から検索します。この結果が名の終了位置になります (15)。

  6. 2 つ目のスペースの次の文字 (D) の位置を取得します。この結果が名の開始位置になります (12)。

  7. 手順 6. で取得した 3 つ目のスペースの文字位置から、手順 7. で取得した "D" の文字位置を減算します。この結果は、手順 4. で取得した 12 文字目を開始位置として、MID 関数で抽出する文字数を示します (15 - 12 = 3)。

  8. ミドル ネーム

    ミドル ネームは、右から 2 文字目 (K) から始まります。次の式は、右から 2 文字を抽出します。

    数式を分離する最後の名前し、サフィックスを最初に、カンマで

    A2 に含まれる最初のスペースの位置を左から検索します (6)。

  9. 1 を加算して、最初のスペースの次の文字 (J) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (6 + 1 = 7)。

  10. A2 に含まれる 2 つ目のスペースを、手順 2. で取得した 7 文字目 (J) から検索します (11)。

  11. 1 を加算して、2 つ目のスペースの次の文字 (D) の位置を取得します。この結果が名の開始位置になります (11 + 1 = 12)。

  12. A2 に含まれる 3 つ目のスペースの位置を左から検索します。この結果が名の終了位置になります (15)。

  13. A2 に含まれる文字列全体の長さを取得し、その文字数と、手順 5. で検索した 3 つ目のスペースまでの左からの文字数との差を求めます。この結果は、氏名から抽出する右からの文字数になります (17 - 15 = 2)。

  14. 姓は、左端の先頭の文字 (B) から始まり、6 文字目 (最初のスペース) で終わります。したがって、次の式は左から 6 文字を抽出します。

    数式を分離する最後の名前し、サフィックスを最初に、カンマで

    SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (6)。

  15. サフィックス

    接尾辞は、左から 7 文字目 (J) から始まり、左から 9 文字目 (.) で終わります。次の式は、7 文字目から始まる 3 文字を抽出します。

    数式を分離する最後の名前し、サフィックスを最初に、カンマで

    SEARCH 関数を使用して、"開始位置" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (6)。

  16. 1 を加算して、最初のスペースの次の文字 (J) の位置を取得します。この結果が接尾辞の開始位置になります (6 + 1 = 7)。

    ネストされた SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (6)。

  17. 1 を加算して、最初のスペースの次の文字 (J) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (7)。

  18. A2 に含まれる 2 つ目のスペースを、手順 4. で取得した 7 文字目から検索します (11)。

  19. 手順 5. で取得した 2 つ目のスペースの文字位置から 1 を減算して、"," の文字位置を取得します。この結果が接尾辞の終了位置になります (11 - 1 = 10)。

  20. 最初のスペースの位置を検索します (6)。

  21. 最初のスペースが見つかったら、手順 3 および 4 と同様に、1 を加算して次の文字 (J) を検索します (7)。

  22. 手順 6. で取得した "," の文字位置から、手順 3. および 4. で取得した "J" の文字位置を減算します。この結果は、手順 2. で取得した 7 文字目を開始位置として、MID 関数で抽出する文字数を示します (10 - 7 = 3)。

この例では、文字列の先頭に名があり、末尾に接尾辞があります。そのため、使用例 2 に似た式を使用できます。つまり、LEFT 関数で名を、MID 関数で姓を、RIGHT 関数で接尾辞をそれぞれ抽出します。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は Excel が右の式を適切な結果に自動変換する間の参照用です。

ヒント    データをワークシートに貼り付ける前に、列 A と B の列幅を 250 に設定します。

名前の例

説明

Gary Altman III

名、姓、接尾辞

結果 (名)

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

  1. 名は、左端の先頭の文字 (G) から始まり、5 文字目 (最初のスペース) で終わります。したがって、次の式は氏名の左から 5 文字を抽出します。

    サフィックスが続く姓とを分離する数式

    A2 に含まれる最初のスペースの位置を左から検索します (5)。

  2. 姓は、左から 6 文字目 (A) から始まり、12 文字目 (2 つ目のスペース) で終わります。この式では、各スペースの位置を検索するために SEARCH 関数がネストされています。

    次の式は、途中の 6 文字目の位置から始まる 6 文字を抽出します。

    サフィックスが続く姓とを分離する数式

    SEARCH 関数を使用して、"開始位置" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (5)。

  3. 1 を加算して、最初のスペースの次の文字 (A) の位置を取得します。この結果が姓の開始位置になります (5 + 1 = 6)。

    ネストされた SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (5)。

  4. 1 を加算して、最初のスペースの次の文字 (A) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (5 + 1 = 6)。

  5. A2 に含まれる 2 つ目のスペースの位置を、手順 4. で取得した 6 文字目から検索します。この文字位置が姓の終了位置です (12)。

  6. 最初のスペースの位置を検索します (5)。

  7. 手順 3. および 4. と同様に、1 を追加して、最初のスペースの次の文字 (A) の位置を取得します (6)。

  8. 手順 5. で取得した 2 つ目のスペースの文字位置から、手順 6. および 7. で取得した "A" の文字位置を減算します。この結果は、手順 2. で取得した 6 文字目を開始位置として、MID 関数で抽出する文字数を示します (12 - 6 = 6)。

  9. サフィックス

    接尾辞は、右から 3 文字目から始まります。この式では、各スペースの位置を検索するために SEARCH 関数がネストされています。

    サフィックスが続く姓とを分離する数式

    ネストされた SEARCH 関数と LEN 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (5)。

  10. 1 を加算して、最初のスペースの次の文字 (A) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (5 + 1 = 6)。

  11. A2 に含まれる 2 つ目のスペースを、手順 2. で取得した 6 文字目 (A) から検索します (12)。

  12. A2 に含まれる文字列全体の長さを取得し、その文字数と、手順 3. で検索した 2 つ目のスペースまでの左からの文字数との差を求めます。この結果は、氏名から抽出する右からの文字数になります (15 - 12 = 3)。

この例では、氏名の前に敬称が付いているため、使用例 2 に似た式を使用します。つまり、MID 関数で名を抽出し、RIGHT 関数で姓を抽出します。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は Excel が右の式を適切な結果に自動変換する間の参照用です。

ヒント    データをワークシートに貼り付ける前に、列 A と B の列幅を 250 に設定します。

名前の例

説明

Mr. 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))

  1. 名は、左から 5 文字目 (R) から始まり、9 文字目 (2 つ目のスペース) で終わります。この式では、各スペースの位置を検索するために SEARCH 関数がネストされています。5 文字目から開始し、4 文字を抽出します。

    プレフィックスに続く姓を分離する数式

    SEARCH 関数を使用して、"開始位置" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (4)。

  2. 1 を加算して、最初のスペースの次の文字 (R) の位置を取得します。この結果が名の開始位置になります (4 + 1 = 5)。

    ネストされた SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (4)。

  3. 1 を加算して、最初のスペースの次の文字 (R) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (4 + 1 = 5)。

  4. A2 に含まれる 2 つ目のスペースの位置を、手順 3. および 4. で取得した 5 文字目から検索します。この文字位置が名の終了位置です (9)。

  5. 最初のスペースを検索します (4)。

  6. 手順 3. および 4. と同様に、1 を追加して、最初のスペースの次の文字 (R) の位置を取得します (5)。

  7. 手順 5. で取得した 2 つ目のスペースの文字位置から、手順 6. および 7. で取得した "R" の文字位置を減算します。この結果は、手順 2. で取得した 5 文字目を開始位置として、MID 関数で抽出する文字数を示します (9 - 5 = 4)。

  8. 姓は右から 5 文字目から始まります。この式では、各スペースの位置を検索するために SEARCH 関数がネストされています。

    プレフィックスに続く姓を分離する数式

    ネストされた SEARCH 関数と LEN 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (4)。

  9. 1 を加算して、最初のスペースの次の文字 (R) の位置を取得します。この結果は、2 つ目のスペースを検索するときの開始位置になります (4 + 1 = 5)。

  10. A2 に含まれる 2 つ目のスペースを、手順 2. で取得した 5 文字目 (R) から検索します (9)。

  11. A2 に含まれる文字列全体の長さを取得し、その文字数と、手順 3. で検索した 2 つ目のスペースまでの左からの文字数との差を求めます。この結果は、氏名から抽出する右からの文字数になります (14 - 9 = 5)。

この例では、ハイフンでつながれた姓を使用します。名前の各構成要素は、スペースによって区切られます。

テーブルのセルをコピーし、Excel のワークシートのセル A1 に貼り付けます。左側の式は 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))

  1. 名は、左端の先頭の文字から始まり、6 文字目 (最初のスペース) で終わります。次の式は、左から 6 文字を抽出します。

    ハイフンでつながれた姓とを分離する数式

    SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれる最初のスペースの位置を左から検索します (6)。

  2. 姓全体は、右から 10 文字目 (T) から始まり、右端の文字 (r) で終わります。

    ハイフンでつながれた姓とを分離する数式

    LEN 関数と SEARCH 関数を使用して、"文字数" 引数に渡す値を取得します。

    A2 に含まれるスペースの位置を、左端の先頭の文字から検索します (6)。

  3. 抽出元の文字列全体の長さを取得し、その文字数と、手順 1. で取得した最初のスペースまでの先頭までの文字数との差を求めます (16 - 6 = 10)。

注: 機械翻訳についての免責事項: この記事の翻訳はコンピューター システムによって行われており、人間の手は加えられていません。マイクロソフトでは、英語を話さないユーザーがマイクロソフトの製品、サービス、テクノロジに関するコンテンツを理解するのに役立てるため、こうした機械翻訳を提供しています。記事は機械翻訳されているため、用語、構文、文法などに誤りがある場合があります。

関連項目

区切り位置指定ウィザードを使用して、テキストをさまざまな列に分割する

スキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×