-
∨目次
- 構文
- 使用例
- 解説
エクセル FIND 関数:文字列の位置を検索する
はじめに
エクセルの FIND 関数の使い方を紹介します。
FIND 関数は検索ワードが見つかった位置を取得します。
検索ワードが文字列の何番目にあるか知りたいときに使用します。複数文字の指定や改行も検索できます。
大文字小文字を区別して検索します。ワイルドカードを使用できません。
- 大文字小文字を区別しないで検索するには「SEARCH 関数」を使用します。
-
目次
- 構文
- 使用例
- 解説
構文
FIND(検索ワード, 検索対象)
検索対象から検索ワードが最初に見つかった位置を取得します。
FIND(検索ワード, 検索対象, 開始位置)
検索対象の開始位置から検索します。
引数「検索ワード」 | 検索する文字列を指定します。 |
引数「検索対象」 | 検索対象となる文字列を指定します。この文字列の中から引数「検索ワード」が最初に見つかった位置が取得されます。 |
引数「開始位置」 | 省略できます。省略すると 1 が指定されます。 検索を開始する位置を指定します。最初の文字から検索するときは 1 を指定します。 |
使用例
文字列「い」を検索する。
=FIND("い","あいうえお")

開始位置を指定する。
=FIND("い","あいうえおい",3)

検索ワードを 1 文字にして検索する。大文字小文字が区別されて検索されます。
=FIND(B3,C3)

検索ワードを複数文字列にして検索する。
=FIND(B3,C3)

開始位置を変化させて検索する。
=FIND(B3,C3,D3)

スポンサーリンク
解説
「FIND 関数」は大文字小文字を区別して検索します。ワイルドカードは使用できません。大文字小文字を区別しないときや、ワイルドカードを使用して検索するには「SEARCH 関数」を使用します。
引数「検索ワード」に空文字""や空のセルを指定したときは、引数「開始位置」の値が返されます。引数「開始位置」を指定しないときは 1 になります。
引数「検索ワード」が見つからなかったときはエラー#VALUE!になります。
引数「開始位置」が 0 以下や引数「検索対象」の文字数より大きいときはエラー#VALUE!になります。
改行を検索する
改行文字は直接入力できないため「CHAR 関数」を使って入力します。
=FIND(CHAR(10),B2)

CHAR(10)は「ラインフィード」といってセル内の改行文字になります。
右から検索する
検索方向を右(後ろ)から検索する方法はありません。VBA (マクロ) の「VBA StrReverse 関数」を使って文字列を反転させる必要があります。