この記事では、Microsoft Excelの複数のメソッドを使用して、特定のテキスト文字列から姓名を抽出する方法を示します。

多くの場合、フルネームを含む名前リストが与えられ、姓、名、ミドルネームに基づいてそれらを分離し、結果を異なるセルに返す必要がある状況に直面します。これはExcelユーザーにとって非常に一般的な問題であり、あなたもそれに遭遇したに違いありません。

これは多くのExcelユーザーにとって非常に一般的な苦痛ですが、完全な名前を含むセルから名、ミドルネームのイニシャル、ラストネームを抽出できる特定の組み込み関数はExcelにありません。

ただし、Excelには、同じことを行うのに役立つ複数のメソッドがあります。そして、それがこの記事のレッスンの目的です。

今日は、名前を異なるセルに分割するために使用できる2つの異なる方法を紹介します。

Excelが名前を格納する最も一般的な方法は、最初に名、スペース、ミドルネームのイニシャル(存在する場合)、スペース、姓の順に入力することです。スペースの代わりに、区切りにコンマが使用される場合があります。

最初の例に移ると、ご覧のとおり、「列A」にいくつかの名前があり、それらを抽出して列B、C、およびDにそれぞれ名、ミドルネームのイニシャルおよびラストネームとして返します。

例1

注:このチュートリアルでは、値を抽出してさまざまな列に返す方法を説明するために、ランダムなサンプル名を使用しています。

image

====== このチュートリアルでは、値を抽出して別の列に返す方法を説明するために、ランダムなサンプル名が使用されていることに注意してください。

ここでは、単純なセルのコンテンツを名と姓として別々の列に分けるために使用される「テキストから列へ」機能を使用します。

この機能は、「データツール」カテゴリの「データ」タブにあります。また、キーボードショートカット「ALT + D + E」( link:/ Tips-excel-shortcut-keys [詳細キーボードショートカット])を使用して、「テキストから列へ」ウィザードにアクセスすることもできます。

=== A9からA17までの範囲を選択し、「ALT + D + E」を押します。

image

====== このチュートリアルでは、値を抽出して別の列に返す方法を説明するために、ランダムなサンプル名が使用されていることに注意してください。

そして、今度は3つの簡単なステップに従う必要があります。ウィザードボックスの上に表示されているように、最初のステップにあります。

「区切り」を選択します。「次へ」をクリックします。最初のステップでは、データがExcelファイルにどのように保存およびフォーマットされているかをExcelに通知する必要があります。

これで、このウィザードの2番目のステップになりました。以下に示すように、ここでは、データに含まれる区切り文字を設定する必要があります。

image

====== 注*このチュートリアルでは、値を抽出してさまざまな列に返す方法を説明するために、ランダムなサンプル名が使用されています。

ここでは、いくつかの「区切り文字」チェックボックスを確認できます。したがって、これらのチェックボックスを選択するか、[その他]チェックボックスで区切り文字を指定することができます。データに、ここにリストされていない他の区切り文字が含まれている場合。データに複数の区切り文字がある場合は、1つまたは複数の区切り文字を選択できます。

image

====== 注*このチュートリアルでは、値を抽出してさまざまな列に返す方法を説明するために、ランダムなサンプル名が使用されています。

「スペース」区切り文字を確認してから、「次へ」をクリックします

image

====== 注*このチュートリアルでは、値を抽出してさまざまな列に返す方法を説明するために、ランダムなサンプル名が使用されています。

「テキストから列へ」ウィザードの最後のステップに進みます。

列データ形式で「一般」を選択します。「宛先」としてB9を選択し、ロックします。*「完了」をクリックします

image

====== 注*このチュートリアルでは、値を抽出してさまざまな列に返す方法を説明するために、ランダムなサンプル名が使用されています。

新しい宛先セル参照を指定しない場合、抽出された列が元のデータを置き換えることに注意してください。

これで、「列A」の名前が複数の列に抽出されたことがわかります。しかし、よく見ると、11番目の行の「SteveSmith」にはミドルネームのイニシャルがなく、姓がミドルネームの列に移動していることがわかります。

image

====== 注*このチュートリアルでは、値を抽出してさまざまな列に返す方法を説明するために、ランダムなサンプル名が使用されています。

これは、「テキストから列へ」は、区切り文字に基づいて単純なコンテンツを異なるセルに分割するためにのみ使用されるためです。そして、彼の名前にはスペースが1つしかないため、次の2つのセルにのみ分割されました。これが、この機能の唯一の欠点です。

=== 例2

_注:2番目の例では、セルH9のフルネームとして「市長トムCブラッドリー」を使用しました。これは、ミドルネームに複数のイニシャルがある場合、関数が両方を抽出することをユーザーに示すためです。 ||||次に、2 ^ nd ^の例に移ります。ここでは、複数の関数を一緒に使用して、探しているものを取得します。これは、「First」、「Middle」、および「LastName」を異なる列に抽出する高度な手法です。また、同じことを行うために、列Hで同様のデータを取得し、列I、J、およびKでそれぞれ名、名、ミドルネーム、姓の3つの部分に分けられた名前を使用します。 B

====== 注*このチュートリアルでは、値を抽出してさまざまな列に返す方法を説明するために、ランダムなサンプル名が使用されています。

image

これは、名前を「First」、「Middle」、「Last」に分割したいが、そのたびに前の方法を繰り返したくない場合に検討するのに最適なソリューションです。セルに数式を入力すると、参照セルが更新され、数式を入力した特定の列に名前が自動的に抽出されます。

=== 名を抽出するには

セルI9を選択します。次の数式を引用符なしで入力します。「= LEFT(H9、SEARCH( “”、H9)-1)」* Enterキーを押します

====== 注*このチュートリアルでは、値を抽出してさまざまな列に返す方法を説明するために、ランダムなサンプル名が使用されています。

image

ご覧のとおり、関数はH9から名を抽出し、セルI9に「Mayor」を付けて返しました。ご存知のように、https://www.youtube.com/watch?v = pD6yqiyT98A [LEFT]関数を使用して、左端の文字と `link:/ text-excel-search-function [SEARCH]`を抽出します

関数は、文字列で最初に見つかった特定の文字の位置を返します。したがって、ここでSEARCH関数は、文字列の6 ^ th ^の位置で最初にスペースを見つけ、スペースを除外するために、LEFTが5文字のみを取得するのに役立つ負の値を指定しました。

=== 姓を抽出するには

K9セルを選択します。次の数式を二重引用符で囲んで入力します_“ = TRIM(RIGHT(SUBSTITUTE(H9、 “”、REPT( “”、255))、255))” _ * Enterキーを押します

====== 注*このチュートリアルでは、値を抽出してさまざまな列に返す方法を説明するために、ランダムなサンプル名が使用されています。

image

姓を抽出するために、REPTとSUBSTITUTE関数をRIGHT関数内にネストしました。そして最後に、すべての条件をTRIMにネストして、不要なスペースをすべて削除しました。これらすべてのステートメントがどのように連携して姓を返すかを見てみましょう。

REPTは、単一スペースを255回繰り返したSUBSTITUTE内にネストされ、SUBSTITUTEは、指定された文字列内の単一スペースを255スペースに置き換えました。そして今、各イニシャルは255スペースで区切られ、RIGHT関数を使用して最上位の255文字を抽出し、https://www.youtube.com/watch?v = -HO9lat0Mfg [TRIM]を使用して余分なスペースをすべて削除してから名前の最後のイニシャルのみで戻ります。

=== ミドルネームを抽出するには

次に、J9セルを選択します。二重引用符なしで次の数式を入力します。“ _ = IF(LEN(H9)-LEN(SUBSTITUTE(H9、 “

“、 “”))> 1、TRIM(SUBSTITUTE(SUBSTITUTE(H9、I9 、 “”)、K9、 “”))、 “”) “_ * Enterキーを押します

====== 注*このチュートリアルでは、値を抽出してさまざまな列に返す方法を説明するために、ランダムなサンプル名が使用されています。

image

Update: _姓または名と同じミドルネームを区切る必要がある場合は、上記の式の代わりに、列Jで次の式を使用してください。 `= TRIM(MID(H9、LEN(I9)+1、 LEN(H9)-LEN(I9)-LEN(K9))) `_関数がすべての条件を評価し、そこからミドルネームのみを抽出する必要があるため、ミドルネームのイニシャルの抽出は非常に難しいように見えます。そのために、https://www.youtube.com/watch?v = SeqWla6pvfw [IF]内にLEN、SUBSTITUTE、TRIM関数をネストしました

https://www.youtube.com/watch?v=SeqWla6pvfw [IF]関数の最初の引数で、論理テストは、文字列の全長から減算するときにスペースのない文字列の長さが1より大きいことを確認しています。か否か。結果がTRUEの場合、関数はSUBSTITUTEがSUBSTITUTE内にネストされているTRUE条件を実行します。ネストされたSUBSTITUTEは、列Iの値を列Hの空のテキストに置き換え、メインのSUBSTITUTEは、列Kの値を空のテキストに置き換え、不要なスペースを削除します。https://www.youtube.com/watch?v = -HO9lat0Mfg [TRIM]が使用されます。また、https://www.youtube.com/watch?v = SeqWla6pvfw [IF]条件が論理テストを満たさない場合、関数は空のテキストを返します。

これは、カスタマイズ機能と簡単な方法を使用して、フルネームを含むセルから「名」、「ミドルネームのイニシャル」、「姓」を抽出する方法です。

== ビデオ:Excelで1つのセルから別々のセルに姓、名を抽出する方法この興味深いビデオチュートリアルをチェックしてください。ここでは、名前を異なるセルに抽出するために使用されるすべての機能と手法について詳しく説明しています。

私たちのブログが気に入ったら、Facebookで友達と共有してください。また、TwitterやFacebookでフォローすることもできます。

_私たちはあなたからの連絡をお待ちしております。私たちの仕事を改善、補完、または革新し、あなたのためにそれをより良くする方法を教えてください。 [email protected]_までご連絡ください