メインコンテンツへスキップ

Excelでフルネームから名、ミドルネーム、姓を抽出する

Author: Xiaoyang Last Modified: 2025-05-23

ユーザー名のリストがあり、そのフルネームを名、ミドルネーム、姓に分割して別々の列に整理したいとします。次のスクリーンショットのように表示されるようにしたい場合、この記事では、Excelでのこの作業を処理するためのいくつかの数式を紹介します。

doc-extract-first-last-name-1


Excelでフルネームから名を抽出または取得する

フルネームから名を抽出または取得するには、LEFT関数とSEARCH関数が役立ちます。一般的な構文は次のとおりです:

=LEFT(名前,FIND(" ",名前)-1)
  • name: 抽出したいフルネームまたはセル参照

結果を得たい空白のセルに次の数式をコピーまたは入力してください:

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

次に、この数式を適用したいセルまでフィルハンドルをドラッグすると、すべての名が以下のスクリーンショットのように抽出されます:

doc-extract-first-last-name-2


数式の説明:

SEARCH(" ",A2)-1: このSEARCH関数は最初のスペース文字の位置を取得するために使用され、1を引くことでスペースの位置より1少ない文字数を意味します。結果として「5」が得られます。

LEFT(A2,SEARCH(" ",A2)-1)= LEFT("Jerry T. Stone",5): このLEFT関数は、「Jerry T. Stone」というフルネームから左側から5文字分(SEARCH関数によって返された文字数)を抽出します。


Excelでフルネームから姓を抽出または取得する

フルネームから姓を抽出するには、RIGHT、LEN、FIND、LEN、SUBSTITUTE関数の組み合わせが役立ちます。一般的な構文は次のとおりです:

=RIGHT(name,LEN(name)-FIND("*",SUBSTITUTE(name," ","*",LEN(name)-LEN(SUBSTITUTE(name," ","")))))
  • name: 姓を抽出したいフルネームまたはセル参照

姓を取得したい空白のセルに次の数式をコピーまたは入力してください:

=RIGHT(A2,LEN(A2)-FIND("*",SUBSTITUTE(A2," ","*",LEN(A2)-LEN(SUBSTITUTE(A2," ","")))))

そして、この数式を適用したいセルまでフィルハンドルをドラッグすると、フルネームからすべての姓が以下のスクリーンショットのように抽出されます:

doc-extract-first-last-name-3


数式の説明:

1. LEN(A2)-LEN(SUBSTITUTE(A2," ","")): この部分は、セルA2内のスペース文字の数を取得するために使用されます。

  • LEN(A2): このLEN関数は、セルA2内の全文字数を返します。結果は「14」になります。
  • SUBSTITUTE(A2," ",""): このSUBSTITUTE関数は、すべてのスペース文字を置き換えます。結果として「JerryT.Stone」が得られます。
  • LEN(SUBSTITUTE(A2," ",""): スペースなしでセルA2内のフルネームの全長を取得します。
  • LEN(A2)-LEN(SUBSTITUTE(A2,"-","")): スペースなしのフルネームの長さを全体のフルネームの長さから引いて、スペースの数を取得します。結果として「2」が得られます。

2. SUBSTITUTE(A2," ","*",LEN(A2)-LEN(SUBSTITUTE(A2," ","")))= SUBSTITUTE(A2," ","*",2): このSUBSTITUTE関数は、最初の部分の数式によって返された最後のスペースを「*」文字に置き換えます。結果として「Jerry T.*Stone」が得られます。

3. FIND("*",SUBSTITUTE(A2," ","*",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))))= FIND("*","Jerry T.*Stone" ): FIND関数は、SUBSTITUTE関数によって返されたテキスト文字列内の「*」文字の位置を返し、結果として「9」が得られます。

4. LEN(A2)-FIND("*",SUBSTITUTE(A2," ","*",LEN(A2)-LEN(SUBSTITUTE(A2," ",""))))= LEN(A2)-9: この数式の部分は、最後のスペース以降に何文字あるかを取得します。結果として「5」が得られます。これはRIGHT関数のnum_chars引数として認識されます。

5. RIGHT(A2,LEN(A2)-FIND("*",SUBSTITUTE(A2," ","*",LEN(A2)-LEN(SUBSTITUTE(A2," ","")))))=RIGHT(A2, 5): 最後に、RIGHT関数は、ステップ4の数式によって返された5文字をセルA2の右側から抽出します。


注意: フルネームのリストに名と姓しか含まれていない場合、次の簡単な数式を使用して姓を取得できます:

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

doc-extract-first-last-name-4


Excelでフルネームからミドルネームを抽出または取得する

フルネームからミドルネームを抽出する必要がある場合、MID関数とSEARCH関数を使用したこの数式が役立ちます。一般的な構文は次のとおりです:

=MID(name, SEARCH(" ", name) + 1, SEARCH(" ", name, SEARCH(" ", name)+1) - SEARCH(" ", name)-1)
  • name: ミドルネームを抽出したいフルネームまたはセル参照

結果を出力したい空白のセルに次の数式を入力またはコピーしてください:

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

次に、この数式を適用したいセルまでフィルハンドルをドラッグすると、すべてのミドルネームが以下のスクリーンショットのように抽出されます:

doc-extract-first-last-name-5


数式の説明:

ミドルネームを抽出するには、まずフルネーム内の両方のスペースの位置を見つけて、その後、MID関数を使用してテキスト文字列の中間にあるテキストを抽出します。

1. SEARCH(" ", A2) + 1: このSEARCH関数は最初のスペースの位置を取得し、1を加えることで次の文字から抽出を開始します。結果として「7」が得られます。この部分はMID関数内のstart_num引数として認識されます。

2. SEARCH(" ", A2, SEARCH(" ", A2)+1) - SEARCH(" ", A2)-1: この部分はMID関数内のnum_chars引数として認識されます。

  • SEARCH(" ", A2, SEARCH(" ", A2)+1): この数式の部分は、2番目のスペースの位置を取得するために使用され、結果として「9」が得られます。
  • SEARCH(" ", A2): このSEARCH関数は、セルA2内の最初のスペースの位置を取得します。結果として「6」が得られます。
  • SEARCH(" ", A2, SEARCH(" ", A2)+1) - SEARCH(" ", A2)-1=9-6-1: 最初のスペースの位置を2番目のスペースの位置から引き、結果から1を引くことで先頭のスペースを削除します。結果として「2」が得られます。

3. MID(A2, SEARCH(" ", A2) + 1, SEARCH(" ", A2, SEARCH(" ", A2)+1) - SEARCH(" ", A2)-1)=MID(A2,7,2): 最後に、MID関数はセルA2の7番目の文字から始まる2文字を抽出します。


注意: フルネームに名と姓しかない場合、上記の数式は以下のスクリーンショットのようにエラー値を返します:

doc-extract-first-last-name-6

この問題を解決するには、上記の数式をIFERROR関数で囲む必要があります。次の数式を適用してください:

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

doc-extract-first-last-name-7


素晴らしい機能を使用してフルネームから名、ミドルネーム、姓を抽出または取得する

上記の数式に苦労している場合は、ここに簡単なツールであるKutools for Excelをお勧めします。Split Names機能を使用すると、すべての名、ミドルネーム、姓を一度に個別のセルに抽出できます。 無料試用版のKutools for Excelをダウンロードするにはここをクリック!


関連する関数:

  • LEFT:
  • LEFT関数は、指定された数の文字を供給された文字列の左側から抽出します。
  • RIGHT:
  • RIGHT関数は、テキスト文字列の右側から特定の数の文字を抽出するために使用されます。
  • MID:
  • MID関数は、指定されたテキスト文字列の中間から特定の数の文字を検索して返すために使用されます。
  • LEN:
  • LEN関数は、テキスト文字列内の文字数を返します。
  • FIND:
  • FIND関数は、ある文字列内での別の文字列の開始位置を検索して返します。
  • SEARCH:
  • SEARCH関数は、指定されたテキスト文字列から特定の文字または部分文字列の位置を見つけるのに役立ちます。
  • SUBSTITUTE:
  • ExcelのSUBSTITUTE関数は、テキスト文字列内のテキストまたは文字を別のテキストまたは文字に置き換えます。

その他の記事:

  • フルネームから名のイニシャルと姓を抽出する
  • フルネームのリストがあり、フルネームから名のイニシャルと姓、または名と姓の最初の文字を抽出したいとします。以下のスクリーンショットのように表示されるようにしたい場合、Excelワークブックでこれらのタスクをどのように処理すればよいでしょうか?
  • Excelリストで名と姓を入れ替えるまたは逆にする
  • 姓と名の形式でフルネームのリストがあり、それを名と姓に入れ替えたいとします。以下のスクリーンショットのように表示されるようにしたい場合、この記事では、Excelでのこの作業を処理するためのいくつかの数式を紹介します。
  • セルから複数行を抽出する
  • 改行で区切られたテキスト文字列のリストがあり(Alt + Enterキーを押してテキストを入力したときに発生)、これらの行のテキストを複数のセルに抽出したいとします。以下のスクリーンショットのように表示されるようにしたい場合、Excelでこれを数式で解決するにはどうすればよいでしょうか?
  • Excelでテキスト文字列からN番目の単語を抽出する
  • テキスト文字列または文章のリストがあり、そのリストから特定のN番目の単語を抽出したいとします。以下のスクリーンショットのように表示されるようにしたい場合、この記事では、Excelでのこの作業を解決するためのいくつかの方法を紹介します。

最高のOffice生産性ツール

Kutools for Excel - あなたを群衆から際立たせるツール

🤖 Kutools AI アシスタント: 次の要素に基づいてデータ分析を革新:インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データの分析とチャートの生成  |  Kutools 拡張機能の呼び出し
人気の機能重複の検索、ハイライト、または識別  |  空白行の削除  |  データを失うことなく列やセルを結合  |  数式なしで丸める ...
スーパーフィルター複数条件  |  複数値  |  複数シート間  |  ファジーマッチ...
高度なドロップダウンリスト簡単なドロップダウンリスト  |  依存するドロップダウンリスト  |  複数選択可能なドロップダウンリスト...
列マネージャー特定の数の列を追加  |  列の移動  |  非表示列の可視性ステータスの切り替え  列を比較して同じおよび異なるセルを選択 ...
注目機能グリッドフォーカス  |  デザインビュー  |  強化された数式バー  |  ワークブックとシートの管理 | オートテキスト ライブラリ (Auto Text)  |  日付ピッカー  |  データの統合  |  セルの暗号化/復号化  |  リストによるメール送信  |  スーパーフィルター  |  特殊フィルタ(太字/斜体/取り消し線のフィルタリング...) ...
トップ15のツールセット12 のテキストツールテキストの追加特定の文字を削除 ...)  |  50 以上 のグラフタイプガントチャート ...)  |  40 以上の実用的な数式誕生日に基づいて年齢を計算 ...)  |  19 の挿入ツールQRコードの挿入パスからの画像挿入 ...)  |  12 の変換ツール単語に変換する通貨変換 ...)  |  7 つの結合と分割ツール高度な行のマージExcelセルの分割 ...)  |  ... さらに

Kutools for Excelは300以上の機能を誇り、必要なものがワンクリックで手に入ります...


Office Tab - Microsoft Office(Excel含む)でのタブ形式の閲覧と編集を有効にする

  • 数十の開いている文書間を1秒で切り替え!
  • 毎日数百回のマウスクリックを減らし、マウス手にさよならを告げる。
  • 複数の文書を閲覧・編集する際に、生産性が50%向上します。
  • Chrome、Edge、Firefoxのように、Office(Excel含む)に効率的なタブをもたらします。