この記事では、Microsoft Excel の FIND 関数の数式の構文と使用方法について説明します。
説明
FIND は、2 番目のテキスト文字列内の 1 つのテキスト文字列を検索し、2 番目のテキスト文字列の最初の文字から最初のテキスト文字列の開始位置の番号を返します。
-
FIND 関数では、既定の言語の設定に関係なく、1 バイト文字も 2 バイト文字も、各文字が常に 1 つとして数えられます。
書式
FIND(検索文字列, 対象, [開始位置])
FIND 関数の構文には、次の引数があります。
-
検索文字列 必ず指定します。 検索する文字列を指定します。
-
対象 必ず指定します。 検索文字列を含む文字列を指定します。
-
開始位置 省略可能です。 検索を開始する位置を指定します。 対象の先頭文字から検索を開始するときは 1 を指定します。 開始位置を省略すると、1 を指定したと見なされます。
解説
-
FIND では大文字と小文字が区別され、ワイルドカード文字は使用できません。 大文字と小文字を区別する検索を行ったり、ワイルドカード文字を使用したりしない場合は、SEARCH を使用できます。
-
検索文字列に空白文字列 ("") を指定した場合、先頭文字と一致したものと見なされ、開始位置に指定した文字番号または 1 が返されます。
-
検索文字列にワイルドカード文字を使うことはできません。
-
find_textがwithin_textに表示されない場合、FIND は #VALUE を返します。 エラー値。
-
start_numが 0 より大きくない場合、FIND は #VALUE を返します。 エラー値。
-
start_numがwithin_textの長さより大きい場合、FIND は #VALUE を返します。 が返されます。
-
指定した文字数をスキップするには、start_numを使用します。 例として FIND を使用して、テキスト文字列 "AYF0093 を使用するとします。YoungMensApparel" テキスト文字列の説明部分で最初の "Y" の番号を見つけるには、テキストのシリアル番号部分が検索されないように、start_num 8 に設定します。 FIND は文字 8 で始まり、次の文字でfind_textを検索し、数値 9 を返します。 FIND は常に、within_textの先頭から文字数を返し、start_numが 1 より大きい場合はスキップした文字をカウントします。
使用例
次の表のサンプル データをコピーし、新しい Excel ワークシートのセル A1 に貼り付けます。 数式を選択して、F2 キーを押し、さらに Enter キーを押すと、結果が表示されます。 必要に応じて、列幅を調整してすべてのデータを表示してください。
データ |
||
---|---|---|
Miriam McGovern |
||
数式 |
説明 |
結果 |
=FIND("M",A2) |
セル A2 で最初に "M" が現れる位置を調べます |
1 |
=FIND("m",A2) |
セル A2 の最初の "m" の位置 |
6 |
=FIND("M",A2,3) |
セル A2 の 3 文字目以降で最初に "M" が現れる位置を調べます |
8 |
使用例 2
データ |
||
---|---|---|
セラミック絶縁器 #124-TD45-87 |
||
銅線コイル #12-671-6772 |
||
可変抵抗器 #116010 |
||
数式 |
説明 (計算結果) |
結果 |
=MID(A2,1,FIND(" #",A2,1)-1) |
セル A2 のうち、1 文字目から "#" の位置までにある文字列を取り出します (セラミック絶縁器) |
セラミック絶縁器 |
=MID(A3,1,FIND(" #",A3,1)-1) |
セル A3 のうち、1 文字目から "#" の位置までにある文字列を取り出します (銅線コイル) |
銅線コイル |
=MID(A4,1,FIND(" #",A4,1)-1) |
セル A4 のうち、1 文字目から "#" の位置までの文字列を取り出します (可変抵抗器) |
可変抵抗器 |
重要:
-
FINDB関数は非推奨です。
-
互換性バージョン 2 に設定されたブックでは、FIND によってサロゲート ペアの動作が改善され、2 文字ではなく 1 文字としてカウントされます。 バリエーション セレクター (絵文字でよく使用される) は、引き続き個別の文字としてカウントされます。 続きを読む: Unicode 標準