Excelでデータを扱っていると「指定した文字列の中で対象の文字が何文字目にあるかを探し出したい」という場面があるかと思います。
そんなときに使える便利な関数が ” FIND関数 ” です!
この記事では、FIND関数の使い方について解説していきます。
目次
FIND関数とは?
まず、FIND関数を初めて知ったという方もおられると思いますので、説明からしていきます。
FIND関数とは・・・
*文字列の位置を調べる関数。
*指定された文字列を対象の文字列の中で検索し、その文字列が最初に現れる位置を先頭から数え、何文字目にあるかを返す。
ちなみに、同様の関数で「文字列のバイト位置を調べる」のは " FINDB関数 " です。
関数の構成
次に関数の基本構成を見ていきましょう。
FIND ( 検索文字列 , 対象 , 開始位置 )
検索文字列: 検索する文字列を指定
対象: 検索の対象となるもとの文字列を指定
開始位置: 先頭を1として文字単位またはバイト単位で数える
(省略したときは1がしていされたものとみなされる)
FIND関数の使い方を解説
さて、ここまで文字の説明ばかりでしたが、ここからは実際にExcel上でFIND関数を使いながら解説していきます。
下の例はA1セルに入力されている文字の中で「県」が何文字目にあるかをB1セルに返しています。
数式としては「=FIND("県",A1)」となります。
結果をみてみると、B1セルには”4”が返されていることがわかります。
A1セルの先頭(左端)から順に「県」という文字を探していき、4文字目で見つかったのでFINDさんはB1セルに”4”と返しています。
では次に、検索文字列に「” "」で囲んで直接指定する方法ではなく、セル参照ができるのかを試してみましょう。
先ほどの例にD1セルに「県」という文字を入力してみました。この状態で先ほどは[検索文字列]の箇所を「“県”」と指定していましたが、D1のセル参照で指定してみたいと思います。数式としては「=FIND(D1,A1)」となります。
直接指定したときと結果は同じく”4”を返しています。セル参照でも指示ができることがわかりました。今回はA1セルだけの文字数を調べましたが、もっとたくさんデータがあったり、県の位置を調べるだけでなく、市の位置を調べるとなった場合には、セル参照の方が融通が利きそうですね!
FIND関数を使う上で押さえておきたい2つのポイント
ある程度FIND関数の使い方がわかってきたのではないでしょうか。
最後に、FIND関数を使う上での2つのポイントを押さえておきましょう。
ポイント
①[検索文字列]に「” "」(空白の文字列)を指定すると、開始位置の値が返される
②アルファベットの大文字と小文字は区別される
[検索文字列]に空白の文字列を指定すると、開始位置の値が返される
ものは試しです。実際にやってみましょう!
下の図で[検索文字列]に「" "」を入れてみると、B1セルに”1”が返されました。
使う場面が果たしてあるのかは謎ですが、覚えておいて損はないと思います。
アルファベットの大文字と小文字は区別される
アルファベットの大文字と小文字(たとえば「A」と「a」)は、同じ「エー」ですが、FINDさんは別の文字として認識します。
A1セルに「Aa」と入力してみました。すると、B1セルには”2”と返されます。
FIND関数で「a」を探し出す数式を入れると1文字目の大文字のAではなく、2文字目の小文字のaの方を結果として返してきたことがわかります。
まとめ
今回解説した「FIND関数」はLEFTやMIDなど他の文字列操作関数に比べると、使い方・使いどころが少し難しく感じるかもしれません。
しかし、様々な場面において汎用性がありますので覚えておくと便利な関数であることは間違いありません。
今回紹介したFIND関数とかなり似ている関数「SEARCH関数」について、また「FIND関数とSEARCH関数の違い」についても改めて別記事で紹介をする予定です。
拝見いただきありがとうございました。