メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。

SEARCH 関数は、開始位置を先頭にして、指定された文字列 (検索文字列) を他の文字列 (対象) の中で検索し、その文字列が最初に現れる位置の文字番号を返します。SEARCH 関数を使用すると、ある文字列に含まれる特定の文字列の位置を調べることができ、さらに MID 関数や REPLACE 関数と組み合わせて、その文字列を置き換えることができます。

書式

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

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

対象  文字列を指定します。この中から検索文字列が検索されます。

開始位置     検索対象の文字列における文字番号を指定します。この番号から検索が開始されます。開始位置を指定すると、指定した文字の数だけ検索をスキップできます。たとえば、文字列 "AYF0093.YoungMensApparel" を検索の対象とします。このとき、文字列のシリアル番号部分をスキップし、説明部分に含まれる最初の "Y" が現れる位置を検索するには、開始位置を 8 に設定します。検索は 8 文字目から開始され、検索文字列がその次の位置に見つかるので、SEARCH 関数は 9 を返します。開始位置が 1 より大きい場合、指定された数だけ文字列がスキップされますが、SEARCH 関数では常に、対象の先頭文字からの位置を返します。

解説

  • SEARCH 関数では、文字列を検索するとき、英字の大文字と小文字は区別されません。

  • SEARCH 関数には FIND 関数と同様な機能がありますが、FIND 関数では、英字の大文字と小文字が区別されます。

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

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

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

使用例

列 1

列 2

列 3

数式

説明 (結果)

Statements

Profit Margin

margin

=SEARCH("e",[Col1],6)

Col1 に含まれる文字列を対象として、6 番目の文字以降に現れる最初の "e" の位置を返します (7)

Statements

Profit Margin

margin

=SEARCH([Col3],[Col2])

"Profit Margin" という文字列を対象として、"margin" の位置を返します (8)

Statements

Profit Margin

margin

=REPLACE([Col2],SEARCH([Col3],[Col2]),6,"Amount")

"Margin" という文字列を "Amount" に置き換えます (Profit Amount)

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。

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

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×