KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

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

著者Xiaoyang変更日

以下のスクリーンショットのように、ユーザー名のリストを「名」「ミドルネーム」「フルネーム」「姓」などに分離された列に分割したい場合、この記事ではExcel でその作業を効率的に処理するためのいくつかの数式をご紹介します。

doc-extract-first-last-name-1


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

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

=LEFT(name,FIND(「 」,name)-1)
  • name:最初の文字を抽出したいフルネームまたはセル参照。

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

=LEFT(A2,SEARCH(「 」,A2)-1)

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

doc-extract-first-last-name-2


数式の説明:

SEARCH(「 」,A2)-1:この SEARCH 関数は最初のスペース文字の位置を検索し、そこから1 を引くことで、スペースの直前までの文字数を取得します。結果は5 になります。

LEFT(A2,SEARCH(「 」,A2)-1)= LEFT(「Jerry T. Stone」,[[PH_88]]):この LEFT 関数は、「Jerry T. Stone」というフルネームの左端から、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,「 」,「*」,[[PH_93]]):この 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 関数がセル A2 のテキスト文字列の右端から、ステップ4 の数式で返された5 文字を抽出します。


注記:フルネームのリストに名と姓のみが含まれている場合、必要な姓を取得するには、次のシンプルな数式を適用できます。

=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


数式の説明:

ミドルネームを抽出するには、まずフルネームに含まれる2 つのスペースの位置を特定し、その後、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名前の分割機能を使えば、名・ミドルネーム・姓を一括で個別のセルに簡単に抽出できます。Kutools for Excel の無料トライアル版をダウンロード!


使用される関連関数:

  • LEFT
  • LEFT 関数は、指定した文字列の先頭(左端)から、指定した文字数だけ抽出します。
  • RIGHT
  • RIGHT 関数は、テキスト文字列の右端から指定した文字数だけ抽出する際に使用します。
  • MID
  • MID 関数は、指定されたテキスト文字列の中央部分から、指定した文字数を抽出して返す際に使用されます。
  • LEN
  • LEN 関数は、テキスト文字列に含まれる文字数を返します。
  • FIND
  • FIND 関数は、指定した文字列を別の文字列内から検索し、その開始位置を返すために使用されます。
  • SEARCH
  • SEARCH 関数は、指定されたテキスト文字列内で特定の文字や部分文字列の位置を検索するのに役立ちます。
  • SUBSTITUTE
  • Excel の SUBSTITUTE 関数は、テキスト文字列内の指定した文字やテキストを、別の文字やテキストに置き換えます。

その他の記事:

  • セルから複数行を抽出
  • テキスト文字列のリストがあり、その文字列が改行(Alt + Enter キーで入力時に発生)で区切られている場合、以下スクリーンショットのようにこれらの行を複数のセルに抽出したいとき、Excel では数式を使ってこの問題をどのように解決できますか?
  • Excel でテキスト文字列から n 番目の単語を抽出
  • テキスト文字列や文章のリストがあり、以下のスクリーンショットのようにリストから特定の n 番目の単語を抽出したい場合、この記事ではExcel でその作業を効率よく行うためのいくつかの方法をご紹介します。

最高の Office 生産性ツール

Kutools for Excel - あなたを群衆の中から際立たせます

🤖KUTOOLS AI アシスト:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気機能検索・ハイライト・重複をマーキング    空白行を削除する    データを失うことなく列の結合またはセルを    数式を使用しない四捨五入...
スーパー VLookup複数条件    複数値    複数シート間    ファジーマッチ...
高度なドロップダウンリスト簡単なドロップダウンリスト    連動型ドロップダウンリスト    複数選択可能なドロップダウンリスト...
列マネージャー指定した数の列を追加    列の移動   非表示列の表示状態を切り替え  列を比較して同じ/異なるセルを選択...
注目の機能グリッドフォーカス    デザインビュー    強化された数式バー    ワークブックとシートマネージャーリソースライブラリ(オートテキスト)  日付ピッカー    ワークシートの統合    暗号化/セルの復号化   リストからメール送信    スーパーフィルター    特殊フィルタ(太字のフォントを持つセルをフィルタリング/イタリック/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除...)  50+チャートタイプガントチャート...)  40+実用的な数式誕生日に基づいて年齢を計算します...)  19 挿入ツールQR コードを挿入パスから画像を挿入...)  12 変換ツール単語に変換する為替レートの変換...)  7 結合と分割ツール高度な行のマージExcel セルを分割...)。。。他にも多数
Kutools を好みの言語でお使いいただけます。英語、スペイン語、ドイツ語、フランス語、中国語、および40+言語以上をサポートしています!

Kutools for Excel は300 以上の機能を備えており、必要な機能が常にワンクリックで利用できます…


Office Tab - Microsoft Office(Excel を含む)でタブを使った閲覧・編集を可能にします

  • 数十もの開いているドキュメントを1 秒で切り替えられます!
  • 毎日何百回ものマウスクリックを削減して、マウス手の悩みともさよならしましょう。
  • 複数のドキュメントを閲覧・編集する際の生産性が50%も向上します。
  • Office(Excel を含む)に、Chrome、Edge、Firefox のような効率的なタブ機能をもたらします。