PR

FIND:ファインド【何文字目にあるかを調べる】

=FIND(検索文字列,対象,開始位置)
■「対象」に指定した文字の中で「検索文字列」を探し、先頭から何文字目かを調べる。「開始位置」を数値で指定すると、その位置以降の文字だけを検索する(省略可)

 図1の表で、部課名を部名と課名に分けたい。しかし、文字数が一定でないため、LEFT関数やRIGHT関数ではうまくいかない。

図1 上のように部名も課名も文字数が一定でない場合は、部名や課名の取り出しに一工夫必要だ。まずFIND関数で「部」が先頭から何文字目にあるかを調べる。そうすれば、「部名」はLEFT関数で「部」の位置まで取り出せばよい。「課名」は、MID関数で「部」の次の文字(部の位置+1)から最後まで取り出す
図1 上のように部名も課名も文字数が一定でない場合は、部名や課名の取り出しに一工夫必要だ。まずFIND関数で「部」が先頭から何文字目にあるかを調べる。そうすれば、「部名」はLEFT関数で「部」の位置まで取り出せばよい。「課名」は、MID関数で「部」の次の文字(部の位置+1)から最後まで取り出す
[画像のクリックで拡大表示]

 こんなときは、まずFIND(ファインド)関数で、「部」の文字が先頭から何文字目にあるかを調べる。FIND関数は、引数「検索文字列」で指定した文字が、引数「対象」で指定した文字中の前から何文字目にあるかを調べるものだ。

 「部」の位置がわかれば、部名はLEFT関数を使って、「部」の位置まで文字を取り出す。課名は、「部」の次の文字から最後の文字までを、MID関数で取り出せばよい。

 なお課名の部分は、文字を置換するSUB STITUTE(サブスティテュート)関数でも取り出せる。引数「文字列」に部課名のセル、「検索文字列」に取り出した部名の文字、「置換文字列」に「""」(空白)を指定すると、部名部分が空白に置換され、課名だけが残るというわけだ。

図2 図1の「課名」は、文字を置換するSUBSTITUTE関数でも取り出せる。部名を「
図2 図1の「課名」は、文字を置換するSUBSTITUTE関数でも取り出せる。部名を「""」(空白)で置き換えると、課名が残る