機能
FIND関数は、指定した文字列の中から、特定の文字列を検索して最初に現れる位置を返す関数です。
記述ルール
FIND関数は次のように記述します。
=FIND(検索文字列,対象,[開始位置])
検索文字列には、検索に使う文字列を指定します。アルファベットの大文字と小文字は区別して検索します。検索文字列にワイルドカードは使えません。
対象には、検索文字列で位置を調べる元の文字列を指定します。
開始位置には、元の文字列の何文字目から検索を始めるかを指定します。この引数は省略可能で、省略すると1文字目から検索します。
=FIND("う","こうちけん")
=FIND("う","とうきょうと")
上記の2つの数式では、いずれも計算結果は2です。
“とうきょうと”の文字列には”う”が2つ含まれていますが、FIND関数は最初に見つけた検索文字列の位置を返す関数のため、このような計算結果になります。この数式では、1つ目の”う”の位置しかわからないので、2つ目の”う”の位置を調べることはできません。
元の文字列の中に検索文字列が複数ある場合は、開始位置を指定することで狙った場所を調べられる場合があります。
=FIND("う","とうきょうと",3)
開始位置を3文字目に指定したことで、”とうきょうと”の2文字目の”う”を飛ばして検索できます。これにより、上記の数式の計算結果は2つ目の”う”の位置である5になります。
さらに条件が複雑になると、開始位置の指定だけでは求める位置を検索できなくなります。FIND関数の応用例については下記をご覧ください。
注意点
記述ルールにも記載していますが、FIND関数では検索文字列にワイルドカードは使えません。部分一致で検索をしたいときはSEARCH関数を使用しましょう。
なお、FIND関数とSEARCH関数の違いは次の2点です。
(1)アルファベットの大文字と小文字を区別するか(FIND関数)、区別しないか(SEARCH関数)
(2)ワイルドカードを使えないか(FIND関数)、使えるか(SEARCH関数)
FIND関数とSEARCH関数は、用途に合わせてうまく使い分けてください。
コメント