エクセルのFIND関数は、セル内である文字が何文字目にあるかを調べます。
たとえば、A1セルに
吉田 拳
と入力されているとき、苗字を名前を分けている半角スペースは何文字目にあるかを調べるには、任意のセルに次の関数を入力します。
=FIND(" ",A1)
するとこのセルには、数字の3が返されます。半角スペースは3文字目に出てくるからですね。
なんでこんな数字を調べる必要があるかと言うと、例えばのケースとしてはこの名前データを苗字と下の名前に分ける必要がある場合に必要になってくるのです。
A1セルに「吉田 拳」と入っているとき、B1セルに苗字、C1セルに名前を出すにはそれぞれのセルに次のように入力します。
B1セル(苗字):
=LEFT(A1,FIND(" ",A1)-1)
A1セルの左から、A1セルにて半角スペースが何文字目にあるかの数から1を引いた数の文字数だけ抽出しています。これで苗字が取り出せます。
C1セル(名前):
=RIGHT(A1,LEN(A1)-FIND(" ",A1)
A1セルの右から、A1セルの文字数-A1セルにて半角スペースが何文字目にあるかの数、の文字数だけ抽出しています。これで名前が取り出せます。
これは毎週やっているExcelセミナーでも必ず教えている内容です。
このように一つのセルの文字列を分割するのはちょっと大変です。なので最初から別のセルに入力しておくなどの計画性が大事になります。
あとからつなげるのは&記号やCONCATENATE関数でいくらでもできるのですから。
また、良く似た関数にSEARCH関数があります。
違いは、大文字と小文字を区別するのがFIND関数、しないのがSEARCH関数ということです。
■FIND関数
セル内において、ある文字が何文字目にあるかを調べる(大文字・小文字の区別なし)
=FIND(検索文字列,対象,[開始位置])
第一引数:セル内で探したい文字
第二引数:第一引数で指定した文字を探したいセル
第三引数:何文字目以降で探すかを指定。省略した場合は「1」となり、つまり1文字目から探す。
【関連記事】
CONCATENATE関数
FIND関数
LEFT関数
LEN関数
RIGHT関数
CONCATENATE関数~文字列を結合する
LEFT関数~セルの左から指定した文字数だけ取り出す
LEN関数~セル内の文字数を数えます
RIGHT関数~セルの右から指定した文字数だけ取り出す
SEARCH関数~セル内である文字が何文字目にあるかを調べる
独学でやってきた方、体系的に学びたい方、もっと効率的に使いたい方へ…
過去10年間毎週開催・400回以上の開催で3700名以上が参加したExcelセミナーです。
実務直結・超実践型・一日完結・生涯無期限アフターサポートがついてます。