SEARCH 関数、SEARCHB 関数
適用対象: Microsoft Excel 2010, Excel Web App, SharePoint Online for enterprises, SharePoint Online for professionals and small businesses
説明
SEARCH 関数および SEARCHB 関数は、指定された文字列を他の文字列の中で検索し、その文字列が最初に現れる位置を左端から数え、その番号を返します。たとえば、"printer" という語で文字 "n" の位置を検索するには、次の関数を使用できます。
=SEARCH("n","printer")
"n" は "printer" という語で 4 番目の文字であるため、この関数は "4" を返します。
他の単語内の単語を検索することもできます。たとえば、次の関数は "5" を返します。
=SEARCH("base","database")
これは、"base"という語は "database" という語の 5 番目の文字で始まるためです。SEARCH 関数と SEARCHB 関数を使用して、別の文字列内の文字または文字列の位置を調べ、MID 関数と MIDB 関数を使用して文字列を返したり、REPLACE 関数と REPLACEB 関数を使用して文字列を変更したりできます。これらの関数については、この記事の「使用例 1」で説明しています。
重要 既定の言語として DBCS 言語が設定されている場合にのみ、1 文字が 2 バイトとしてカウントされます。それ以外の場合は、SEARCH と同様、1 文字あたり 1 バイトとしてカウントされます。
DBCS をサポートする言語には、日本語、簡体字中国語、繁体字中国語、および韓国語があります。
書式
SEARCH(検索文字列,対象,[開始位置])
SEARCHB(検索文字列,対象,[開始位置])
SEARCH 関数と SEARCHB 関数の書式には、次の引数があります。
解説
- SEARCH 関数および SEARCHB 関数では、大文字と小文字は区別されません。大文字と小文字を区別して検索を行うには、FIND 関数および FINDB 関数を使用します。
- 検索文字列では、半角の疑問符 (?) または半角のアスタリスク (*) をワイルドカード文字として使用できます。疑問符は任意の 1 文字を表し、アスタリスクは任意の文字列を表します。ワイルドカード文字ではなく、通常の文字として疑問符やアスタリスクを検索する場合は、その文字の前に、"~*" のように半角のチルダ (~) を付けます。
- 検索文字列が見つからないと、エラー値 #VALUE! が返されます。
- 開始位置を省略すると、1 を指定したと見なされます。
- 開始位置に 0 以下の整数を指定した場合、または開始位置が対象の文字数よりも大きい場合は、エラー値 #VALUE! が返されます。
- 開始位置を指定すると、検索を開始する位置を指定した文字の数だけスキップできます。たとえば、SEARCH 関数を使用して文字列 "AYF0093.YoungMensApparel" を検索の対象にするとします。このとき、文字列のシリアル番号部分 ("AYF0093") をスキップし、説明部分に含まれる最初の "Y" が現れる位置を検索するには、開始位置を 8 に設定します。8 文字目から検索が開始され、検索文字列がその次の位置に見つかるので、SEARCH 関数は 9 を返します。SEARCH 関数は常に、対象の先頭文字からの位置を返します。開始位置が 1 を超える場合は、指定された数だけ文字列がスキップされます。
使用例
使用例 1: SEARCH
使用例を新規のワークシートにコピーすると、計算結果を確認できます。
その方法は?
- Ctrl キーを押しらながら C キーを押します。
- 空のブックまたはワークシートを作成します。
- ワークシートでセル A1 を選択し、Ctrl キーを押しながら V キーを押します。Excel Web App を使用している場合は、使用例のセルごとにコピーと貼り付けを繰り返します。
|
使用例 2: SEARCHB
重要 ご使用のコンピューターでこの例を実行するには、地域の設定で DBCS をサポートする言語に設定する必要があります。
- SEARCHB 関数の場合は、各文字がバイト単位で数えられ、1 番目の文字は 2 バイトで、2 番目の文字は 3 バイト目から始まることから、3 が返されます。
- SEARCH 関数の場合は、" " は文字列内で 2 番目の位置にあることから、2 が返されます。SEARCH 関数では、既定の言語の設定に関係なく 2 が返されます。
=SEARCHB
(" "," ")
= 3
=SEARCH(" "," ")
= 2
Weblioに収録されているすべての辞書からSEARCH 関数を検索する場合は、下記のリンクをクリックしてください。
全ての辞書からSEARCH 関数を検索
- SEARCH 関数のページへのリンク