Excelでは、姓と名の間に区切りとなる文字(普通はスペース)が入力されていれば、FIND関数 、LEFT関数 、RIGHT関数 、LEN関数 などを使うことで姓と名に分割することができます。例えば、姓名の前後に余分なスペースがなく、かつ、姓と名の間のスペースが半角に統一されていれば、以下の式で分割できます。
姓 ⇒ =LEFT(A1, FIND(" ", A1)-1)
名 ⇒ =RIGHT(A1, LEN(A1)-FIND(" ", A1))
しかしながら、実際のデータでは、余分なスペースはバリバリ入っているし、スペースも半角と全角が入り乱れていることが多々あります。そういう場合は、SUBSTITUTE関数 で全角スペースを半角スペースに変換し、更に、TRIM関数 で前後のスペースを取っておくとよいでしょう。
=TRIM(SUBSTITUTE(A1," "," "))
これらを組み合わせると、「姓」を取り出す式は以下のようになります。
=LEFT(TRIM(SUBSTITUTE(A1," "," ")), FIND(" ", TRIM(SUBSTITUTE(A1," "," ")))-1)
「武田 信玄」から「武田」だけが取り出されます。
B1セルを他のセルにコピペします。
一方、「名」を取り出す式は以下のようになります。
=RIGHT(TRIM(SUBSTITUTE(A1," "," ")), LEN(TRIM(SUBSTITUTE(A1," "," ")))-FIND(" ", TRIM(SUBSTITUTE(A1," "," "))))
「武田 信玄」から「信玄」だけが取り出されます。
C1セルを他のセルにコピペします。
Googleスプレッドシートでも同じ方法が使えます。「姓」を取り出す式は以下のようになります。
=LEFT(TRIM(SUBSTITUTE(A1," "," ")), FIND(" ", TRIM(SUBSTITUTE(A1," "," ")))-1)
「武田 信玄」から「武田」だけが取り出されます。
B1セルを他のセルにコピペします。
一方、「名」を取り出す式は以下のようになります。
=RIGHT(TRIM(SUBSTITUTE(A1," "," ")), LEN(TRIM(SUBSTITUTE(A1," "," ")))-FIND(" ", TRIM(SUBSTITUTE(A1," "," "))))
「武田 信玄」から「信玄」だけが取り出されます。
C1セルを他のセルにコピペします。
ではでは。
0 件のコメント:
コメントを投稿