SEARCH は、特定の文字または文字列が最初に見つかった文字数 (start_num から始まる) を返します。 MID または REPLACE 関数を使用してテキストを変更できるように、SEARCH を使用して別のテキスト文字列内の文字または文字列の位置を特定します。
構文
SEARCH(find_text,within_text,start_num)
Find_text は検索する文字列です。 ワイルドカード文字 (疑問符 (?) とアスタリスク (*) を find_text で使用できます。 ワイルドカード文字の疑問符は任意の 1 文字を表し、アスタリスクは 1 文字以上の任意の文字列を表します。 ワイルドカード文字ではなく、通常の文字として疑問符やアスタリスクを検索する場合は、その文字の前に半角のチルダ (~) を付けます。
Within_text は、find_textを検索するテキストです。
Start_num は、検索を開始する within_text の文字番号です。 start_num を使用して、指定した文字数をスキップします。 たとえば、テキスト文字列 "AYF0093 を操作しているとします。YoungMensApparel". テキスト文字列の説明部分の最初の "Y" の番号を見つけるには、テキストstart_num連番部分が検索されないように、 を 8 に設定します。 SEARCH は文字 8 から始まり、次の文字で find_text を検索し、数字 9 を返します。 SEARCH は常にwithin_textの先頭からの文字数を返し、start_numが 1 より大きい場合はスキップする文字数をカウントします。
解説
- SEARCH では、テキストを検索するときに大文字と小文字は区別されません。
- SEARCH は FIND に似ていますが、FIND で大文字と小文字が区別される点が異なります。
- find_textが見つからない場合、#VALUE! が返されます。
- start_numを省略すると、1 と見なされます。
- start_num が 0 (ゼロ) 以下であるか、within_text の長さより大きい場合、#VALUE! が返されます。
例
| col1 | col2 | col3 | 数式 | 説明 (計算結果) |
|---|---|---|---|---|
| Statements | Profit Margin | 余白 | =SEARCH("e",[Col1],6) | 文字列内の最初の "e" の位置 (6 番目の位置から始まる) |
| Statements | Profit Margin | 余白 | =SEARCH([Col3],[Col2]) | 「利益率」における「証拠金」の位置 (8) |
| Statements | Profit Margin | 余白 | =REPLACE([Col2],SEARCH([Col3],[Col2]),6,"Amount") | "Margin" を "Amount" (Profit Amount) に置き換えます |