SEARCH 関数、SEARCHB 関数

ここでは、Microsoft Excel の SEARCH 関数と SEARCHB 関数の書式および使用法について説明します。

説明

SEARCH 関数および SEARCHB 関数は、指定された文字列を他の文字列の中で検索し、その文字列が最初に現れる位置を左端から数え、その番号を返します。 たとえば、"printer" という語で文字 "n" の位置を検索するには、次の関数を使用できます。

=SEARCH("n","printer")

"n" は "printer" という語で 4 番目の文字であるため、この関数は "4" を返します。

他の単語に含まれる単語を検索することもできます。 たとえば、次の関数は

=SEARCH("base","database")

"base" という単語が "database" の 5 文字目から始まるので 、5を返します。 SEARCH関数とSEARCHB関数を使用して、別のテキスト文字列内の文字または文字列の位置を特定し、MID関数と MIDB関数を使用してテキストを返したり、REPLACE関数とREPLACEB関数を使用してテキストを変更することができます。 これらの関数は、この記事の 例 1 で示されています。

重要: 

  • これらの関数は、一部の言語ではご利用いただけないことがあります。

  • SEARCHB では、既定の言語として DBCS 言語が設定されている場合にのみ、1 文字が 2 バイトとしてカウントされます。 それ以外の場合は、SEARCH と同様、1 文字あたり 1 バイトとしてカウントされます。

DBCS をサポートする言語には、日本語、簡体字中国語、繁体字中国語、および韓国語があります。

構文

SEARCH(検索文字列,対象,[開始位置])

SEARCHB(検索文字列,対象,[開始位置])

SEARCH 関数と SEARCHB 関数の書式には、次の引数があります。

  • 検索文字列    必ず指定します。 検索する文字列を指定します。

  • 対象    必ず指定します。 検索文字列引数に指定した値を含む文字列を指定します。

  • 開始位置    省略可能です。 検索を開始する位置を指定します。

解説

  • SEARCH 関数および SEARCHB 関数では、大文字と小文字は区別されません。 大文字と小文字を区別して検索を行うには、FIND 関数および FINDB 関数を使用します。

  • 検索文字列 には、半角の疑問符(?)  または半角のアスタリスク (*) をワイルドカード文字として使用できます。 ワイルドカード文字の疑問符は任意の 1 文字を表し、アスタリスクは 1 文字以上の任意の文字列を表します。 ワイルドカード文字ではなく、通常の文字として疑問符やアスタリスクを検索する場合は、その文字の前に半角のチルダ (~) を付けます。

  • 検索文字列 が見つからないときは、エラー値 #VALUE! が返されます。

  • 開始位置 を省略すると、1 を指定したと見なされます。

  • 開始位置 に 0 (ゼロ) 以下の整数を指定した場合、または開始位置が対象の文字数よりも大きい場合は、エラー値 #VALUE! が返されます。

  • 指定 start_num 数をスキップする場合は、このオプションを使用します。 例として SEARCH 関数 を使用すると、文字列 "AYF0093。YoungMensApparel" テキスト文字列の説明部分の最初の "Y" の位置を検索するには、テキストのシリアル番号部分 (この場合は "AYF0093") が検索されないstart_num を 8 に設定します。 SEARCH 関数は、検索操作を 8 文字目から開始し、find_text引数で指定された文字を次の位置で検索し、数値 9 を返します。 SEARCH 関数は常に within_text 引数の始めから文字数を返し、start_num引数が 1 より大きい場合にスキップする文字数を返します。

次の表のサンプル データをコピーし、新しい Excel ワークシートのセル A1 に貼り付けます。 数式を選択して、F2 キーを押し、さらに Enter キーを押すと、結果が表示されます。 必要に応じて、列幅を調整してすべてのデータを表示してください。

データ

Statements

Profit Margin

余白

The "boss" is here.

数式

説明

結果

=SEARCH("e",A2,6)

最初の文字列のうち、6 番目の文字以降に現れる最初の "e" の位置を調べます。

7

=SEARCH(A4,A3)

"Profit Margin" (検索対象のセルは A3) という文字列から "margin" (検索対象の文字列はセル A4) の位置を調べます。

8

=REPLACE(A3,SEARCH(A4,A3),6,"Amount")

セル A3 の "Margin" の位置を検索し、"Margin" を "Amount" に置き換えた後、その文字と次の 5 文字を "Amount" に置き換えます。

Profit Amount

=MID(A3,SEARCH(" ",A3)+1,4)

"Profit Margin" (セル A3) で、最初のスペース文字に続く最初の 4 文字を返します。

Marg

=SEARCH("""",A5)

セル A5 の最初の二重引用符 (") の位置を返します。

5

=MID(A5,SEARCH("""",A5)+1,SEARCH("""",A5,SEARCH("""",A5)+1)-SEARCH("""",A5)-1)

セル A5 で二重引用符で囲まれた文字列のみを返します。

boss

ヘルプを表示

Office のスキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×