Excelを使っていると「特定の文字を含むセルを探したい」「商品コードから商品名を検索したい」「複数条件に合うデータを抽出したい」といったニーズが頻繁に出てきます。通常は「Ctrl+F」で検索できますが、業務では 関数を使って検索機能を付ける ことで、シート上に自動検索の仕組みを作れます。
この記事では、代表的な検索関数(SEARCH・FIND・VLOOKUP・INDEX+MATCH・XLOOKUP・FILTER)を取り上げ、基礎から応用まで徹底解説します。
目次
- ✅ Excelで使える検索機能系の関数まとめ
- ✅ SEARCH関数で部分一致検索をする
- ・基本構文
- ・例:住所に「東京」が含まれるか判定
- ✅ FIND関数で大文字・小文字を区別して検索
- ・基本構文
- ・例:「Excel」と「excel」を区別して検索
- ✅ VLOOKUP関数で表からデータを検索
- ・基本構文
- ・例:商品コードから商品名を検索
- ✅ INDEX+MATCH関数で柔軟に検索
- ・構文の組み合わせ
- ・例:商品名から価格を検索
- ✅ XLOOKUP関数(最新Excel)
- ・基本構文
- ・例:社員IDから所属部署を検索
- ✅ FILTER関数で条件に合うデータを抽出(Excel 365以降)
- ・基本構文
- ・例:売上10万円以上の顧客を検索して抽出
- ✅ 実務で役立つ検索機能の応用シナリオ
- ・顧客リスト検索
- ・商品マスタ検索
- ・人事管理
- ・アンケート集計
- ✅ 検索関数を使うときの注意点
- ■ まとめ:Excelの検索機能は関数を使って仕組み化しよう
✅ Excelで使える検索機能系の関数まとめ
Excelには「検索」に関連する関数が複数存在します。それぞれの役割を整理すると次のようになります。
- SEARCH関数:文字列の中に特定のキーワードがあるか検索
- FIND関数:SEARCHと似ているが大文字・小文字を区別
- VLOOKUP関数:検索値を基に表の中から対応する値を抽出
- INDEX+MATCH関数:より柔軟な検索・参照が可能
- XLOOKUP関数:VLOOKUPの進化版、最新Excelで利用可能
- FILTER関数:条件に合う行を丸ごと検索して抽出
この章から、それぞれの具体的な使い方を解説します。
参考:【ChatGPT】Excel作業を自動化する方法|関数提案からマクロ作成まで使い倒す
✅ SEARCH関数で部分一致検索をする
・基本構文
=SEARCH(検索文字列, 対象文字列, [開始位置])
・例:住所に「東京」が含まれるか判定
=ISNUMBER(SEARCH("東京", B2))
結果がTRUEなら「東京」を含む、FALSEなら含まない。
参考:【Excel】文字列の含有チェックと色分けを行う方法|SEARCH関数と条件付き書式で業務を見える化!
・特徴
- 部分一致検索に強い
- 大文字小文字を区別しない
- 数値で返す(見つかった位置)ため、
ISNUMBERと組み合わせて利用するのが定番
✅ FIND関数で大文字・小文字を区別して検索
・基本構文
=FIND(検索文字列, 対象文字列, [開始位置])
・例:「Excel」と「excel」を区別して検索
=ISNUMBER(FIND("Excel", A2))
・特徴
- SEARCHと同じだが、大文字小文字を区別する点が異なる
- 正確な文字列一致が必要な場合に有効
参考:IF関数で「文字が入っていたら」判定する方法|入力チェック・文字列処理の基本と応用
✅ VLOOKUP関数で表からデータを検索
・基本構文
=VLOOKUP(検索値, 範囲, 列番号, [検索方法])
・例:商品コードから商品名を検索
=VLOOKUP(E2, A2:C100, 2, FALSE)
E2に入力された商品コードを検索し、商品名を返す。
・特徴
- Excel初心者から最も使われる検索関数
- ただし「左端列縛り」や「列挿入に弱い」という制約がある
参考:【Excel】ISERRORとVLOOKUPを使った〇×判定方法|ステップ解説と実務活用術
✅ INDEX+MATCH関数で柔軟に検索
・構文の組み合わせ
=INDEX(返したい範囲, MATCH(検索値, 検索範囲, 0))
・例:商品名から価格を検索
=INDEX(C2:C100, MATCH(E2, B2:B100, 0))
・メリット
- 検索列がどこにあっても使える
- 横方向にも検索可能
- 複数条件検索にも応用可能
参考:【Excel】IFNA関数で複数条件を処理する方法|VLOOKUP・INDEX/MATCH・IFとの組み合わせでExcel作業を効率化
✅ XLOOKUP関数(最新Excel)
・基本構文
=XLOOKUP(検索値, 検索範囲, 戻り値範囲, [見つからない場合], [検索モード], [照合モード])
・例:社員IDから所属部署を検索
=XLOOKUP(E2, A2:A100, C2:C100, "該当なし")
・特徴
- VLOOKUPの弱点を克服
- 左右両方向に検索可能
- 該当なし時のメッセージを簡単に指定できる
参考:【Excel】XLOOKUPで完全一致モードでも一致してしまう理由とは?全角・半角やスペースに潜む落とし穴を徹底解説
✅ FILTER関数で条件に合うデータを抽出(Excel 365以降)
・基本構文
=FILTER(配列, 条件式, [該当なしの場合])
・例:売上10万円以上の顧客を検索して抽出
=FILTER(A2:C100, C2:C100>=100000, "該当なし")
・特徴
- 複数件を一覧で抽出可能
- 最新Excelで使える強力な検索機能
- 部分一致検索も
SEARCHと組み合わせて可能
参考:【Excel】XLOOKUP関数で複数条件を扱う方法とは?INDEX・FILTERとの違いも解説【実務対応】
✅ 実務で役立つ検索機能の応用シナリオ
・顧客リスト検索
顧客名を入力すると住所・電話番号を自動表示。営業リスト作成に活用。
参考:【Excel】条件に合うデータを関数で抽出する方法まとめ|実務で役立つテクニック
・商品マスタ検索
商品コードから商品名・単価を検索。受発注業務を効率化。
参考:【Excel】【在庫管理】在庫数に応じて発注判断を自動化するIF関数の設定方法|ムダなく効率的な仕入れを実現
・人事管理
社員番号を入力すると部署・勤続年数を検索。人事データベースの検索に。
参考:【Excel】検索システムを作る方法まとめ|関数と機能で簡単に実装する手順
・アンケート集計
回答から「改善」「不満」を含む自由記述を抽出。テキスト分析に利用。
✅ 検索関数を使うときの注意点
- データ範囲は「見出し付きの表形式」に整える
- 半角・全角、大文字小文字の違いで結果が変わる場合あり
- VLOOKUPは列挿入に弱いため、INDEX+MATCHかXLOOKUP推奨
- 大量データではFILTERやXLOOKUPの方が処理効率が高い
■ まとめ:Excelの検索機能は関数を使って仕組み化しよう
Excelで検索機能を関数として実装する方法は複数あります。
- 部分一致なら SEARCH関数、大文字小文字区別なら FIND関数
- 単一検索なら VLOOKUP関数、柔軟性重視なら INDEX+MATCH関数
- 最新Excelなら XLOOKUP や FILTER関数 で強力に検索可能
✅ まとめ:Excelの検索関数を使い分ければ、単なる「検索」から「検索システム」へと進化し、日常業務を大幅に効率化できる!