テキストの中から特定の文字がどこにあるかを調べたい場面はよくあります。
そんなときに便利なのが SEARCH関数 です。
指定した文字列が何文字目にあるかを数値で返すため、文字列操作やデータ抽出に役立ちます。
この記事では、SEARCH関数の基本的な使い方をわかりやすく解説します。
SEARCH関数とは
SEARCH関数は、指定した文字列の中で検索文字列が最初に現れる位置を返す関数です。
書式
=SEARCH(検索文字列, 対象文字列, [開始位置])
引数の説明
- 検索文字列:探したい文字列。
- 対象文字列:検索対象となるセルや文字列。
- 開始位置(省略可):検索を始める位置。省略時は1文字目から検索。
- 位置は1文字目を1として数えます。
- 大文字と小文字を区別しません。
SEARCH関数の使い方
例①:特定の文字の位置を調べる
SEARCH関数は、文字列の中で「指定した語句がどこに現れるか」を調べて、
その開始位置を返す関数です。
=SEARCH("関数",B3)

この結果が 6 になるのは、
「Excel関数を学ぶ」
1文字目:E
2文字目:x
3文字目:c
4文字目:e
5文字目:l
6文字目:関 ←ここから「関数」が始まるため
7文字目:数
という仕組みです。
- 大文字・小文字を区別しない
→ SEARCH(“p”, “apple”) も SEARCH(“P”, “apple”) も 2 が返ります。 - 見つからないとエラー(#VALUE!)
→ SEARCH(“検査”, “パソコン検定”) → 見つからないため #VALUE!
例②:ワイルドカードの使い方
SEARCH関数では、次の2つのワイルドカードを使って柔軟に検索できます👇
*(アスタリスク) … 任意の長さの文字列?(クエスチョン) … 任意の1文字
=SEARCH("a*l",B3)
と入力すると、検索パターン「a*l」は「a」と「l」の間にどんな文字が続いてもよい
という意味になるため、「apple」の「appl」に一致します。
その結果、SEARCH関数は 「apple」の1文字目に一致が見つかったと判断し、返り値は 1 になります。

SEARCH関数とFIND関数の違い
文字列の位置を検索する関数にはSEARCH関数とFIND関数の2種類がありますが、
最大の違いは大文字・小文字の区別とワイルドカードの使用可否です。
- SEARCH関数:大文字・小文字を区別せず、ワイルドカード(
*や?)も利用可能 - FIND関数:大文字・小文字を区別し、ワイルドカードは使用不可
このように、SEARCH関数は柔軟な検索が可能で、FIND関数は厳密な検索に向いています
関連関数
まとめ
SEARCH関数は、文字列の中から特定の語句が「どの位置に現れるか」を調べるための便利な関数です。
大文字・小文字を区別しないため扱いやすく、ワイルドカードにも対応しているため、商品名やメールアドレス、文章データの検索など幅広いシーンで活躍します。
部分一致検索や柔軟な文字列チェックを行いたいときに、SEARCH関数を覚えておくと作業効率がぐっと上がります。文字列操作の基本として、ぜひ活用してみてください。



Excel人気記事