Excelで氏名が複数並んでいるセルから名字だけを抽出したい場面はよくあります。特に、1つのセルに複数人の氏名がコンマで区切られている場合、手作業で整理するのは大変です。この記事では、関数を活用して効率的に名字だけを抽出する方法を解説します。
セル内の氏名の構造を理解する
まず、氏名のパターンを整理します。1人の氏名は「名字 スペース 名前」の形式で、複数人の氏名はコンマで区切られています。
例: “AA AAA,B BBB,CC CC” のように複数の氏名が1つのセルにある場合、各名字だけを抽出する必要があります。
単一氏名から名字を抽出する方法
1人の氏名だけの場合は、LEFT関数とFIND関数を組み合わせることで簡単に名字を取得できます。
例: セルA1に “DD DD” がある場合、=LEFT(A1,FIND(” “,A1)-1) と入力すると、”DD” が抽出されます。
複数氏名の場合の関数アプローチ
複数氏名の場合、TEXTSPLIT関数(Excel 365以降)を使用して、コンマで分割してから各氏名の名字を抽出する方法が便利です。
例: =TEXTJOIN(“,”,TRUE,LEFT(TEXTSPLIT(A1,”,”),FIND(” “,TEXTSPLIT(A1,”,”))-1))
この式では、まずTEXTSPLITでコンマごとに氏名を分割し、LEFTとFINDで各氏名の名字を取得、最後にTEXTJOINでカンマ区切りで結合します。
古いExcelバージョンでの対応
TEXTSPLITが使えない場合は、MIDやSEARCH、LEN、SUBSTITUTEなどの関数を組み合わせて配列数式を作成する方法があります。少し複雑になりますが、同じくカンマ区切りで名字だけを抽出可能です。
場合によっては、区切り位置の機能で氏名を分割し、名前列を削除してTEXTJOINで結合する方法も有効です。
複数パターンの実例
1. “AA AAA,B BBB,CC CC” → “AA,B,CC”
2. “DD DD” → “DD”
3. “EE EEE,FFF F” → “EE,FFF”
これらのパターンに対して、上記の関数やTEXTSPLITを活用すれば、簡単に名字だけを抽出できます。
まとめ
Excelで複数の氏名から名字だけを抽出するには、TEXTSPLITやLEFT、FIND関数を組み合わせる方法が効率的です。複数人の氏名がカンマで区切られている場合でも、関数を使えば一度に抽出でき、手作業の手間を大幅に減らせます。


コメント