SEARCH、SEARCHB 大文字と小文字を区別せず文字位置を検索するExcel関数

SEARCH関数は、大文字と小文字を区別しないで、指定された文字列を別の文字列の中から検索し、見つかった位置を返します。
SEARCH関数は、1バイト文字も 2バイト文字も、1文字としてカウントします。
SEARCHB関数は、1バイト文字は1文字、2バイト文字は2文字としてカウントします。

SEARCH関数はワイルドカードを使うことができます。
ワイルドカードとは、「?」半角の疑問符と「*」半角のアスタリスクです。
例えば、「EX**」を検索すると、「EXAB」でも「EX12」でも検索されます。
つまり、EX+2文字なら検索されることになります。
あいまい検索を行う場合はこの関数を使います。

構文: SEARCH(検索文字列, 対象, [開始位置]) 、 SEARCHB(検索文字列, 対象, [開始位置])
検索文字列 - 検索する文字列を指定します。
対象 - 検索対象の文字列を指定します。
開始位置 - (省略可能)検索開始位置を指定します。省略すると1文字目から検索します。


Homeに戻る > Excel 文字列関数のTipsへ

実行画面

D列にSEARCH関数、E列にSEARCHB関数が入力されています。

4行目 - 2バイト文字の「山本達也」から「本」を検索します。
5行目 - 2バイト文字の「綺麗なバラの花」から「バラ」を検索します。
6行目 - 1バイト文字の「ExcelExcel」から「lEx」を検索します。
1バイト文字なので、FindとFindBが同じ位置になっています。
7行目 - 1バイト文字の「ExcelExcel」から「lex」を検索します。
「lex」は小文字ですが、見つかっています。
8行目 - 1バイト2バイト混合文字の「Excel関数Tips」から「関数」を検索します。
9行目 - 1バイト2バイト混合文字の「Excel関数Excel関数Tips」から、検索開始位置を7に指定し「関数」を検索します。
10行目 - 1バイト2バイト混合文字の「Excel関数Excel関数Tips」から、検索開始位置を7に指定し「関数**」を検索します。
ワイルドカード(*)を使い、関数+2文字の文字列を検索しています。
11行目 - 1バイト2バイト混合文字の「Excel関数Excel関数Tips」から、検索開始位置を7に指定し「関数??」を検索します。
ワイルドカード(?)を使い、関数+2文字の文字列を検索しています。
12行目 - 1バイト2バイト混合文字の「Excel関数Excel関数Tips」から、検索開始位置を7に指定し「3D関数」を検索します。
見つからないので#VALUEエラーとなっています。

SEARCH関数では、2バイト文字が2にカウントされているのが分かります。
SEARCH関数の使用例サンプル


入力されてる、SEARCH関数とSEARCHB関数
SEARCH関数の計算式



Homeに戻る > Excel 文字列関数のTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved