エクセルで大量のデータの中から、特定のキーワードだけでなく、複数のキーワードを効率的に検索したいとお考えですか。
通常の検索機能では一度に一つのキーワードしか指定できず、作業が非効率になることもあるでしょう。
本記事では、部分一致やOR条件、AND条件といった複雑な検索ニーズに対応するため、エクセルに標準搭載されているフィルター機能や各種関数を駆使した具体的な方法を詳しく解説します。
データの抽出や整理に役立つテクニックを身につけ、日々の業務をスムーズに進めていきましょう。
エクセルで複数のキーワードを検索する際は「オートフィルター」と「詳細設定フィルター」、そして各種関数を使い分けましょう
エクセルで複数のキーワードを効率的に検索するには、AND検索なら「オートフィルター」の「テキストフィルター」を複数回適用し、OR検索なら「詳細設定フィルター」の複数条件指定が最適です。
関数を利用すれば、より複雑な条件や複数のシートを横断した検索も可能になります。
それではまず、エクセルでのキーワード検索における主な手法とその特徴を一覧表で確認していきましょう。
| 検索条件 | 主な機能・関数 | 特徴と使いどころ |
|---|---|---|
| 部分一致検索 | オートフィルター(テキストフィルター)、「検索と置換」 | 特定の文字や文字列を含むデータを手軽に絞り込む際に有効です。 |
| AND条件検索 | オートフィルター(テキストフィルターを複数回適用)、詳細設定フィルター | 複数のキーワード全てを含むデータを抽出したい場合に利用します。 |
| OR条件検索 | 詳細設定フィルター、COUNTIF関数、FIND/SEARCH関数 | いずれか一つでもキーワードを含むデータを広範囲に抽出したいときに便利です。 |
| 複数シート・ブック検索 | 「検索と置換」機能の拡張、VLOOKUP/XLOOKUP関数 | シートやブックを横断して関連する情報を探索し、統合したい場合に役立つでしょう。 |
この表を参考に、ご自身の検索したい条件に合わせて適切な方法を選択することが大切です。
部分一致検索の基本的な考え方
部分一致検索とは、入力したキーワードがデータのどこかに含まれていれば、そのデータを検索結果として表示する方法です。
例えば、「りんご」と検索した際に「青森りんご」や「りんごジュース」もヒットするイメージですね。
エクセルでは「オートフィルター」の「テキストフィルター」機能や、一般的な「検索と置換」機能で簡単に部分一致検索を実行できます。
AND検索とOR検索の概念を理解する
複数のキーワードを検索する際に重要になるのが、AND検索とOR検索の概念です。
AND検索は「〇〇も△△も両方含む」という条件で、すべてのキーワードを満たすデータのみを抽出します。
一方、OR検索は「〇〇か△△のいずれかを含む」という条件で、どちらかのキーワードを満たしていれば抽出対象となるでしょう。
これらの違いを理解することが、適切な検索方法を選ぶ上で非常に重要になります。
エクセルフィルター機能の概要と使いどころ
エクセルのフィルター機能は、特定の条件に合致するデータのみを表示し、不要なデータを一時的に非表示にする機能です。
主に「オートフィルター」と「詳細設定フィルター」の2種類があります。
オートフィルターは簡単な条件設定に優れ、詳細設定フィルターは複数の条件や複雑なOR条件に対応できるのが特徴です。
それぞれのフィルター機能を使いこなすことで、データ分析の幅が大きく広がるでしょう。
オートフィルターを使った効率的な部分一致・AND検索
続いては、オートフィルターを使った部分一致・AND検索の方法を確認していきます。
オートフィルターは、エクセルで最も手軽に使えるデータ絞り込み機能です。
単一のキーワード検索はもちろん、複数のキーワードをAND条件で検索する際にも非常に役立ちます。
具体的な手順を覚えて、日々の業務に活用してみてください。
特定のキーワードを含むデータをオートフィルターで絞り込む方法
オートフィルターで部分一致検索を行うには、まずデータ範囲のヘッダー行を選択し、「データ」タブから「フィルター」を適用します。
次に、検索したい列のフィルターボタンをクリックし、「テキストフィルター」から「指定の値を含む」を選択しましょう。
例えば、「商品名」列から「ノート」を含む商品を検索したい場合、「指定の値を含む」を選び、キーワード入力欄に「ノート」と入力してOKをクリックします。
これで「ノートパソコン」「ノートブック」「ノート」といった商品が抽出されるでしょう。
ワイルドカード文字(*や?)を使うと、より柔軟な検索も可能です。
複数のキーワードをAND条件で検索する手順
オートフィルターでAND条件検索を行う場合、複数のキーワードを「指定の値を含む」で複数回適用するのが一般的な方法です。
最初のキーワードで絞り込んだ後、再度同じ列のフィルターボタンをクリックし、「テキストフィルター」から「指定の値を含む」を選び、2つ目のキーワードを入力します。
これにより、1つ目のキーワードを含み、さらに2つ目のキーワードも含むデータのみが表示されるでしょう。
複数のテキストフィルターを重ねて適用することで、複数のAND条件を簡単に設定できます。
オートフィルターでのOR条件検索(代替案)
オートフィルターのテキストフィルターでは、直接的なOR条件は設定しにくいのが現状です。
しかし、複数回「指定の値を含む」を適用し、それぞれの結果を手動で結合する、または「指定の値を含む」の選択肢を複数チェックする(一部バージョン)といった代替案も考えられます。
より複雑なOR条件を効率的に行いたい場合は、次に説明する「詳細設定フィルター」を利用するのが良い方法でしょう。
詳細設定フィルターによる複数キーワード(OR条件)検索
続いては、詳細設定フィルターによる複数キーワード(OR条件)検索の方法を確認していきます。
詳細設定フィルターは、オートフィルターよりも複雑な検索条件、特にOR条件を含む複数のキーワード検索に特化した強力な機能です。
条件範囲を別途設定する必要があるため、少し手間はかかりますが、その分柔軟なデータ抽出が可能になります。
詳細設定フィルターは、複数の条件をAND条件、OR条件、あるいはそれらの組み合わせで指定できる点が大きな特徴です。
特に、「AまたはB」といったOR条件の抽出を行う際には、オートフィルターよりも詳細設定フィルターの方が効率的でしょう。
詳細設定フィルターの準備と条件範囲の設定
詳細設定フィルターを使用する前に、まず検索条件を記述する「条件範囲」をシート上に準備する必要があります。
条件範囲は、元のデータのヘッダー行と同じ見出しをコピーし、その下に検索したい条件を記述して作成します。
同じ行に条件を記述するとAND条件に、異なる行に記述するとOR条件になるのがポイントです。
例:
商品名
*ノート*
*ペン*
この場合、「商品名」列に「ノート」を含む、または「ペン」を含むデータを抽出するOR条件となります。
OR条件で検索範囲を広げる具体的な方法
OR条件で検索範囲を広げるには、条件範囲内で異なる行にキーワードを記述します。
例えば、「商品名」列で「パソコン」か「タブレット」のいずれかを含むデータを抽出したい場合、条件範囲は以下のように設定するでしょう。
A1セルに「商品名」、A2セルに「*パソコン*」、A3セルに「*タブレット*」と入力します。
その後、「データ」タブから「詳細設定」を選択し、リスト範囲と条件範囲を指定してフィルターを実行します。
AND条件とOR条件の組み合わせで絞り込む
詳細設定フィルターでは、AND条件とOR条件を組み合わせた複雑な検索も可能です。
例えば、「カテゴリが「文具」で「ノート」を含む、または「カテゴリが「家電」で「パソコン」を含む」といった条件を設定できます。
この場合、条件範囲は複数の列と行を使い、それぞれの条件を適切に配置することで実現可能です。
条件範囲の設計が少し複雑になるため、事前にどのようなデータを抽出したいのかを明確にしておくことが大切になります。
関数を使った高度なキーワード検索とデータ抽出
続いては、関数を使った高度なキーワード検索とデータ抽出の方法を確認していきます。
エクセルの関数を活用すれば、フィルター機能だけでは難しい、より柔軟で高度なキーワード検索とデータの抽出が可能になります。
特に、部分一致の判定や、複数の条件を組み合わせた複雑な抽出ロジックを組む際にその威力を発揮するでしょう。
| 関数名 | 主な用途 | 特徴と注意点 |
|---|---|---|
| COUNTIF | 指定した範囲内で条件に合うセルの数を数える | ワイルドカード(*や?)を使って部分一致を判定できます。TRUE/FALSEの判定に便利です。 |
| FIND/SEARCH | 特定の文字列が別の文字列内で見つかる最初の位置を返す | FINDは大文字・小文字を区別し、SEARCHは区別しません。エラー値(#VALUE!)を返す場合があるため、IFERRORとの組み合わせが推奨されます。 |
| IF | 論理式が真(TRUE)か偽(FALSE)かに基づいて異なる値を返す | COUNTIFやFIND/SEARCHの結果を受けて、抽出条件に合致するかどうかを判定し、表示する値を変更できます。 |
| AND/OR | 複数の論理式を組み合わせてAND条件またはOR条件の結果を返す | IF関数と組み合わせて、複数のキーワードによる複雑な抽出条件を設定する際に役立ちます。 |
COUNTIF関数で部分一致を判定する方法
COUNTIF関数は、指定した範囲内で特定の条件を満たすセルの数を数える関数です。
この関数ではワイルドカード文字(*:任意の文字列、?:任意の1文字)を使用できるため、部分一致検索に非常に便利に活用できます。
例えば、あるセルにキーワードが含まれているかを判定し、その結果を使ってフィルターをかけるといった応用が考えられるでしょう。
新しい列に「=COUNTIF(A2,”*キーワード*”)」と入力すれば、そのキーワードが含まれていれば1以上、含まれていなければ0が返されます。
FIND/SEARCH関数でキーワードの位置を特定する
FIND関数とSEARCH関数は、ある文字列が別の文字列の中に含まれている場合に、その開始位置を数値で返す関数です。
含まれていない場合はエラー値「#VALUE!」を返します。
FIND関数は大文字・小文字を区別するのに対し、SEARCH関数は区別しないという違いがあります。
これらの関数をIF関数やIFERROR関数と組み合わせることで、キーワードの有無を判定し、条件に合致するデータを抽出することが可能です。
複数の関数を組み合わせた抽出テクニック
エクセル関数は、単体で使うだけでなく、複数組み合わせることでさらに高度な抽出が可能です。
例えば、複数のキーワードをOR条件で検索したい場合、「OR(ISNUMBER(SEARCH(“キーワード1”,A2)),ISNUMBER(SEARCH(“キーワード2”,A2)))」のような数式を作成し、その結果をIF関数で判定できます。
これらの関数を組み合わせた論理式をヘルパー列に作成し、その列を基準にオートフィルターをかけることで、複雑な条件での抽出を実現できるでしょう。
複数のシートやブックからキーワードを検索する方法
続いては、複数のシートやブックからキーワードを検索する方法を確認していきます。
一つのシート内だけでなく、複数のシートやブックにまたがる膨大なデータの中から、必要なキーワードを効率的に見つけ出す必要が生じることもあります。
エクセルには、そのような状況に対応するための機能や関数が用意されています。
複数のシートをまとめて検索する機能
エクセルの「検索と置換」機能は、単一のシートだけでなく、複数のシートをまとめて検索する際にも活用できます。
「ホーム」タブの「検索と選択」から「検索」を選び、表示されるダイアログボックスの「オプション」をクリックしましょう。
「検索場所」のドロップダウンリストから「ブック」を選択することで、現在開いている全てのシートを対象にキーワード検索を行うことが可能です。
これにより、シートごとに検索する手間を省き、全体の効率を向上させられるでしょう。
VLOOKUP/XLOOKUP関数を使った関連データ検索
特定のキーワードをキーとして、別のシートやブックから関連するデータを検索し、抽出したい場合には、VLOOKUP関数やXLOOKUP関数が非常に役立ちます。
これらの関数は、指定した検索値に対応するデータを、異なるシートやブックの範囲から見つけて返してくれるものです。
XLOOKUP関数はVLOOKUP関数の後継として、より柔軟な検索やエラー処理が可能になっています。
参照したいシート名やブック名を適切に指定することで、複数のファイルに散らばった情報の一元化が容易になるでしょう。
VBA(マクロ)を活用した検索の自動化
非常に複雑な検索条件や、定期的に実行する必要のある複数キーワード検索の場合、VBA(マクロ)を活用して検索プロセスを自動化することも一つの有効な手段です。
VBAを使えば、ユーザー定義の関数を作成したり、複数のフィルター条件をプログラムで設定したり、検索結果を自動で別のシートにコピーしたりといった処理が可能になります。
初期設定にはVBAの知識が必要ですが、一度作成してしまえば、ボタン一つで複雑な複数キーワード検索を瞬時に実行できるようになり、大幅な時間短縮と作業の効率化が期待できます。
検索結果の活用とデータ整理のポイント
続いては、検索結果の活用とデータ整理のポイントを確認していきます。
キーワード検索で抽出したデータは、そのままにせず、適切に活用し整理することで、さらにその価値を高められます。
ここでは、検索結果を最大限に活かすための具体的な方法と、今後のデータ管理に役立つ整理術を紹介します。
検索結果を新しいシートに抽出する
フィルター機能で絞り込んだデータは、一時的な表示に過ぎません。
もし、検索結果を恒久的なデータとして保存したい場合や、別の分析に利用したい場合は、新しいシートに抽出することをおすすめします。
フィルターで絞り込んだ範囲をコピーし、新しいシートに貼り付けるだけで簡単に実行できるでしょう。
詳細設定フィルターであれば、結果を別の場所に出力するオプションも利用可能です。
検索結果に基づいたデータの並べ替えと集計
抽出したデータは、さらに並べ替え(ソート)や集計を行うことで、新たなインサイトを発見できる可能性があります。
例えば、特定のキーワードを含む商品を抽出した後、売上順に並べ替えたり、カテゴリごとの合計を計算したりすることで、ビジネス上の意思決定に役立つ情報が得られるでしょう。
ピボットテーブルを活用すれば、複雑な集計も視覚的に分かりやすく表現できます。
検索効率を高めるためのデータ整理術
今後の検索効率を高めるためには、日頃からのデータ整理が非常に重要です。
具体的には、データの見出しを統一する、同じ種類のデータは同じ列に格納する、不必要な空白行や列をなくすといった基本的なルールを守ることが挙げられます。
また、セルの結合はフィルターや関数での検索を妨げることがあるため、できる限り避けるのが賢明でしょう。
クリーンで構造化されたデータは、複数キーワード検索を含め、あらゆるエクセル操作の基盤となります。
まとめ
本記事では、エクセルで複数のキーワードを効率的に検索するための様々な方法について解説しました。
単一のキーワード検索から、部分一致、そしてAND条件やOR条件といった複雑な組み合わせまで、目的に応じて「オートフィルター」や「詳細設定フィルター」、さらには「COUNTIF」や「FIND/SEARCH」といった関数を使い分けることが重要です。
また、複数のシートやブックを横断して検索する方法、そして抽出したデータを効果的に活用し、整理するポイントもお伝えしました。
これらのテクニックを習得することで、エクセルでのデータ分析能力が飛躍的に向上し、日々の業務効率化に大きく貢献するでしょう。
ぜひ、今回ご紹介した内容を参考に、ご自身の業務でエクセルを最大限に活用してみてください。