名前の操作

氏名から姓と名を分離するには文字列関数を使います。

しかし、姓や名は人によって文字数がバラバラでどこで区切るか確定しません
ここでのポイントは、氏名に目印があるかどうかです。
サンプルデータでは、姓と名の間にスペースが入っていることが分かります。
これを手掛かりに取り出します。
(ただし、この方法が使えるのは日本名のように氏名が姓と名の2つに分かれている場合です)

氏名から姓を取り出す

文字列の先頭から指定の文字数を取り出すにはLEFT関数を使います。

LEFT(文字列,文字数)

氏名の先頭から姓の文字数を指定すれば、姓を取り出すことができます。
では、姓の文字数はどうすればわかるでしょうか。

上記のように姓と名の間のスペースの位置を調べれば姓の文字数を知ることができます
利用する関数は、FIND関数を使います。

FIND(検索文字列,対象,{開始位置})

このうち、開始位置は省略可能で、省略した時には1となります。

  1. まずC列とD列の間に2列追加しt、列見出しを「姓」、「名」とします。
  2. C2セルをポイントし、関数の挿入ボタンをおします。
  3. LEFT関数を探して〔OK〕ボタンを押します。
  4. 文字列にはB2セルを指定します。
  5. 文字数のボックスをポイントします。
  6. 名前ボックスからFIND関数を探して、〔OK〕ボタンを押します。
  7. 〔検索文字列〕には「" "」(全角スペースを半角ダブルクォーテーションで挟みます)を入力し、
    〔対象〕にはB2セルを指定します。開始位置は省略するか、1を入力します。
  8. 数式バーのLEFTあたりをクリックして、LEFTの引数ウィンドウを表示させます。
  9. このままだとFIND関数によりスペースの位置まで取り出してしまうので文字数を-1します。
  10. 〔OK〕ボタンを押せば完成です。

氏名から名を取り出す

文字列の末端から指定の文字数を取り出すにはRIGHT関数を使います。

RIGHT(文字列, 文字数)

氏名の名前部分を取り出すには、スペースより右の文字数を指定する必要があります。 これは〔氏名の文字数-スペースの位置〕で求められます。
そのため、上記で使ったFIND関数とLEN関数を使います。

  1. D2セルをポイントし、関数の挿入ボタンをおします。
  2. RIGHT関数を探して〔OK〕ボタンを押します。
  3. 文字列にはB2セルを指定します。
  4. 文字数のボックスをポイントします。
  5. 名前ボックスからLEN関数を探して、〔OK〕ボタンを押し文字列にB2セルを指定します。
  6. 数式バーのRIGHTあたりをクリックして、RIGHTの引数ウィンドウを表示させます。
  7. 〔LEN(B2)〕の後ろに「-」を入力し、名前ボックスからFIND関数を探して、〔OK〕ボタンを押します。
  8. 〔検索文字列〕には「" "」(全角スペースを半角ダブルクォーテーションで挟みます)を入力し、
    〔対象〕にはB2セルを指定します。開始位置は省略するか、1を入力します。
  9. 数式バーのRIGHTあたりをクリックして、RIGHTの引数ウィンドウを表示させます。
  10. 〔OK〕ボタンを押せば完成です。

代表的な文字列抽出関数には、LEFT,RIGHT,MID がありますが、これらは、文字列から、指定した数の文字を取り出します。 LEFT関数は左から取り出します。RIGHT関数は右端から、MID関数は指定した位置から取り出します。 使い分けは、どこから取り出したほうが簡単かという判断で使います。