Excelには文字列内の特定文字列の場所を数で取得するFIND関数が用意されています。ここではFIND関数の機能と使い方について解説します。
関連リンク
SEARCH関数の使い方(文字列内の指定文字の場所を取得)
改行を検索する方法まとめ
検索・置換に関するショートカットキー
FIND関数とは
ExcelのFIND関数は、文字列内の特定文字列の位置を数値として返します。たとえば「=FIND(“LAB”,”COMMAND LAB”)」と入力すると「COMMAND LAB」の中の「LAB」が9文字目にあるので「9」を返します。もし特定文字列が見つからない場合、#VALUEエラーを返します。
この関数の対応バージョンはExcel 2003以降です
FIND関数の構文
- 検索文字列:検索する文字列を指定。複数文字でも可能。空文字列 (“”) を指定した場合、対象の先頭文字と一致したものと見なされます。ワイルドカード(*)は使用できません。
- 対象:検索対象の文字列を指定します。
- 開始位置:この引数は省略可能です。検索を開始する位置を数値で指定します。対象文字列の先頭から検索を開始するときは1を指定します。開始位置を省略すると、1を指定したと見なされます。
FIND関数の使用例
使用例1:基本的な使い方
基本的な使い方です。この例ではB3セル内の「COMMAND LAB」の中の「LAB」が何文字目にあるかを出力しています。
=FIND("LAB",B3)
結果 → 9
使用例2:LEFT関数とFIND関数を組み合わせて名字のみを取り出す方法
LEFT関数とFIND関数を組み合わせて名字を取り出す例です。LEFT関数とは第1引数に指定した文字列から第2引数に指定した数値分だけ左から文字列を抽出するという関数となり、LEFT関数の第2引数内にFIND関数を入れ子にして半角スペースの場所を抽出し、そこから-1することで名字の文字数を取得し、名字を抽出しています。
=LEFT(B3,FIND(" ",B3)-1)
結果 → 田中
関連リンク
LEFT関数の使い方(文字列の左側からテキストを抽出)
RIGHT関数の使い方(文字列の右側からテキストを抽出)
MID関数の使い方(対象文字列から一部テキストを抽出)
使用例3:検索文字が見つからない場合の挙動
検索値が存在しない場合はFIND関数は#VALUEエラーを返します。
=FIND("ABC","COMMAND LAB")
結果 → #VALUE!
関連リンク
エラーの意味と原因まとめ
使用例4:検索文字列が対象に含まれているかを論理値で返す
検索文字列が対象に含まれているかどうかを論理値で返したい場合はISNUMBER関数と組み合わせることで実現できます。検索文字が対象に含まれていればTRUEを返し、含まれていなければFALSEを返します。これはFIND関数が検索文字が含まれていない場合は#VALUEエラーを返し、含まれていれば数値を返す特性を利用したテクニックです。
=ISNUMBER(FIND(C3,B3))
結果 → FALSE
FIND関数の要点
- FIND関数は、対象文字列内にある検索文字の最初の位置を数値で返します。
- FIND関数が返す数値は、1文字目を1とする先頭からの文字数として返します。
- 開始位置は省略可能で、デフォルトは1となります。
- 検索文字が空(””)の場合、FIND関数は1を返します。
- FIND関数は検索文字が見つからない場合は#VALUEエラーを返します。
- FIND関数では大文字と小文字が区別され、ワイルドカードはサポートされていません。
- 大文字と小文字を区別せずに検索したり、ワイルドカードを使用したりするには、SEARCH関数を使用します。
関連リンク
ワイルドカードの使い方についてわかりやすく解説
SEARCH関数の使い方(文字列内の指定文字の場所を取得)
おすすめの解説動画
FIND関数について説明している動画です。応用についてもわかりやすく説明しているのでおすすめです。
ショートカットキーの練習できます
当サイトはショートカットキーの練習を実際の動きを確認しながら練習できる機能がついています。繰り返し指を動かして練習ができるので、ゲーム感覚で遊んでいくうちに自然とショートカットキーが使えるようになれます。ショートカットキーは暗記するよりも実際に手を動かして練習していったほうが習得が早くなるので、是非当サイトをブックマークに登録し定期的に練習してみてください。下記のSTARTキーを押下すると練習を始められます。
※推奨ブラウザ Google Chrome