Excelで一覧表を扱っていると、複数のキーワードを含むデータだけを抽出したい場面があります。
たとえば商品名に「東京」または「大阪」が入る行を探したい場合や、担当者が「田中」で、かつステータスが「完了」のデータを確認したい場合です。
検索ボックスだけでは一度に確認できる条件が限られるため、オートフィルター、フィルターの検索欄、詳細設定、関数を使い分けることが重要になります。
複数キーワードの検索では、いずれかを含むOR条件と、すべてを満たすAND条件を先に区別することが最短の近道です。
複数キーワードを検索する主な方法
・同じ列で複数候補を選ぶ場合はフィルターのチェックボックス
・同じセルに複数語があるか調べる場合はフィルター検索欄または数式
・別の列の条件を組み合わせる場合は列ごとのフィルター
この記事では、エクセルで複数キーワードを検索する方法を、フィルターを中心にわかりやすく解説していきます。
複数候補を選ぶフィルター検索手順
それではまず、同じ列から複数の候補を選んで抽出するフィルターについて解説していきます。
| 商品名 | 地域 | 担当者 | 売上 |
|---|---|---|---|
| 東京プリンター | 東京 | 田中 | 120000 |
| 大阪モニター | 大阪 | 佐藤 | 98000 |
| 名古屋キーボード | 愛知 | 田中 | 45000 |
表全体へのフィルター設定
1行目に見出しがある一覧表では、まず見出し行を含めて表の中の任意のセルを選択します。
続いてリボンのデータタブを開き、フィルターをクリックしましょう。
各見出しセルの右側に下向き矢印が表示されれば、フィルターを使う準備は完了です。
表の途中に空白行や空白列があると、Excelがデータ範囲を正しく判断できないことがあります。

空白が混ざる表では、先に範囲をドラッグしてからフィルターを設定すると、抽出対象の漏れを防げます。
【操作のポイント】見出し行は必ず1行目にそろえ、列ごとに異なる種類のデータを入れます。
チェックボックスによる複数候補選択
地域列の矢印をクリックすると、東京、大阪、愛知など、列内にある値がチェックボックスで表示されます。
すべて選択のチェックを外した後に、東京と大阪だけへチェックを付けてOKをクリックしてください。
これにより、地域が東京または大阪である行だけが表示されます。
この選択方法は、条件のどれか1つに該当すれば表示するOR条件の抽出です。

候補が少ない名簿、支店一覧、商品分類などでは、チェックボックスでの選択がもっとも直感的です。
東京と大阪を選択した場合、Excelは地域が東京である行と、大阪である行をまとめて表示します。
東京と大阪の両方を同じ1つのセルに含む必要はありません。
【操作のポイント】複数のチェックを付けた抽出は、同一列では基本的にOR条件として働きます。
フィルター解除と抽出結果確認
抽出後は、行番号が連番ではなくなり、条件に合わない行が一時的に非表示になります。
データ自体が削除されたわけではないため、元に戻したいときは列見出しの矢印からフィルターをクリアを選びます。
データタブにあるクリアを使えば、複数列に設定した条件をまとめて解除することも可能です。
フィルター中に表示される件数は、画面左下のステータスバーでも確認できます。
抽出した状態でコピーすると、通常は表示中のセルだけをコピーできるため、報告用のリスト作成にも便利です。
【操作のポイント】フィルター解除はデータの復元ではなく、隠れている行を再表示する操作です。
同じセル内の複数キーワード検索
続いては、商品名や備考など、1つのセル内に複数の語句が含まれるデータを探す方法を確認していきます。
| 問い合わせ内容 | 担当者 | 対応状況 |
|---|---|---|
| 東京支店からプリンター見積依頼 | 田中 | 対応中 |
| 大阪支店からモニター見積依頼 | 佐藤 | 完了 |
| 東京支店のモニター不具合 | 田中 | 対応中 |
フィルター検索欄の利用
対象列のフィルター矢印をクリックすると、上部に検索欄が表示されます。
ここへ東京と入力すると、東京という文字を含む候補だけに絞り込まれます。
検索欄は候補を探しやすくするための機能なので、候補が数百件ある列でも目的の値を素早く見つけられます。
検索欄に複数の単語を空白で並べても、期待どおりの複数条件検索にならない場合があります。
複数の完全一致候補を選びたい場合には、検索後に該当するチェックボックスへ印を付ける方法が確実です。
【操作のポイント】検索欄は候補の絞り込み用と考え、確定前のチェック状態を必ず確認します。
テキストフィルターの条件指定
セルに含まれる文字列を条件にしたいときは、フィルター矢印からテキストフィルターを選択します。
表示されるメニューで指定の値を含むを選び、検索したいキーワードを入力します。
さらにAndまたはOrを選択できる画面では、1つ目に東京、2つ目にモニターと入力できます。

Andを選べば東京とモニターの両方を含むセルだけが残り、Orを選べばどちらかを含むセルが残ります。
同じ列の1セル内で二つの語を確認するなら、テキストフィルターのAnd条件が有効です。
【操作のポイント】文字列の条件を入れる順番は結果に影響しませんが、AndとOrの選択は結果を大きく変えます。
部分一致と大文字小文字の扱い
指定の値を含むを使ったテキストフィルターは、セル全体が同じ文字でなくても一致します。
東京支店、東京都、東京営業所のように、東京を含む文字列をまとめて検索できる点が特徴です。
日本語では表記ゆれに注意が必要であり、全角と半角の違い、不要な空白、旧字体などがあると一致しないことがあります。
英字の検索では多くの場合に大文字と小文字は区別されませんが、記号やスペースは文字として扱われます。

部分一致の例
東京で検索すると、東京支店、東京都、東京営業所が候補になります。
東京支店で検索すると、東京支店を含むより限定的な候補になります。
【操作のポイント】検索漏れを避けたいときは、正式名称よりも共通する短い語句で部分一致検索を行います。
複数列条件を組み合わせるフィルター設定
続いては、担当者、地域、対応状況など、別々の列にある条件を組み合わせるフィルター設定を確認していきます。
| 顧客名 | 地域 | 担当者 | 対応状況 |
|---|---|---|---|
| 青木商事 | 東京 | 田中 | 完了 |
| 中村工業 | 大阪 | 田中 | 対応中 |
| 山本企画 | 東京 | 佐藤 | 完了 |
列ごとのフィルターによるAND条件
地域列で東京を選択した後に、担当者列で田中を選択してみましょう。
この場合は、地域が東京であり、かつ担当者が田中である行だけが表示されます。
別々の列に設定したフィルターは、基本的にすべての条件を満たす必要があるAND条件として処理されます。
地域 = 東京
担当者 = 田中
結果 = 地域が東京 AND 担当者が田中の行
売上の確認対象を担当者と地域で限定したいときや、未完了案件だけを表示したいときにも役立つ考え方です。
【操作のポイント】複数列で絞り込むほど件数は少なくなるため、最初は条件を一つずつ追加します。
フィルター操作画面の確認
ここでは、地域と担当者の条件を順番に設定する画面イメージを確認していきます。
地域列の条件を確定してから担当者列の矢印を開くと、現在表示されている行を基準に候補を確認できます。
フィルターアイコンが漏斗の形に変わった列には、何らかの絞り込み条件が設定されています。
【操作のポイント】抽出結果が0件になったときは、各列の漏斗アイコンを確認して条件を一つずつ解除します。
数値条件と文字列条件の併用
複数キーワードの検索に加えて、売上や日付などの数値条件を設定することもできます。
たとえば地域を東京、対応状況を完了、売上を100000以上と設定すれば、優先的に確認したい実績だけを抽出できます。
数値列では数値フィルター、日付列では日付フィルター、文字列列ではテキストフィルターを選びます。
列のデータ形式が統一されていないと、数値フィルターや日付フィルターが正しく表示されないことがあります。
条件の組み合わせ例
地域が東京
担当者が田中
売上が100000以上
この3条件を別列に設定すると、すべてを満たす行だけが表示されます。
【操作のポイント】数値を文字列として入力している列は、先に数値へ変換してからフィルターを設定します。
関数を使う複数キーワード判定
続いては、フィルターだけでは判定しにくい複数キーワードを、数式で補助列に表示する方法を確認していきます。
| A列 問い合わせ内容 | B列 判定 |
|---|---|
| 東京支店 モニター交換 | 対象 |
| 大阪支店 プリンター交換 | 対象外 |
| 東京支店 プリンター見積 | 対象外 |
SEARCH関数による部分一致判定
SEARCH関数は、指定した文字がセル内の何文字目にあるかを調べる関数です。
A2セルに東京が含まれるか確認する場合は、SEARCH(“東京”,A2)のように入力します。
見つかった場合は位置を表す数値を返し、見つからない場合はエラーになります。
=IF(ISNUMBER(SEARCH(“東京”,A2)),”対象”,”対象外”)
この式では、SEARCHの結果が数値なら対象、エラーなら対象外と表示します。
SEARCH関数は部分一致の判定に向いており、セルに追加の文章が含まれていても検索できます。
【操作のポイント】数式はB2のように見出し行の下へ入力し、1行目のヘッダーには入力しません。
AND関数による二語同時判定
東京とモニターの両方を含む行だけを対象にしたい場合は、二つのSEARCH関数をAND関数で結びます。
=IF(AND(ISNUMBER(SEARCH(“東京”,A2)),ISNUMBER(SEARCH(“モニター”,A2))),”対象”,”対象外”)
AND関数はすべての条件がTRUEであるときだけTRUEを返すため、二語を同時に含むセルだけが対象になります。
東京支店 モニター交換は対象となり、東京支店 プリンター見積は対象外になります。
AND条件の数式は、同じセルの中に複数語が存在するかを明確に判定したいときに便利です。
【操作のポイント】検索語を増やすときは、AND関数の中へISNUMBERとSEARCHの組み合わせを追加します。
OR関数によるいずれかの語句判定
東京または大阪に関する問い合わせを対象にしたい場合は、AND関数の代わりにOR関数を使います。
=IF(OR(ISNUMBER(SEARCH(“東京”,A2)),ISNUMBER(SEARCH(“大阪”,A2))),”対象”,”対象外”)
OR関数は、条件のうち一つでもTRUEであればTRUEを返します。
判定列に対象と表示された行だけをフィルターで抽出すれば、複雑な検索条件でも再利用しやすくなります。
数式をB2に入力した後は、セル右下のフィルハンドルを下へドラッグしてオートフィルを実行しましょう。
補助列を作る方法は、抽出条件を目で確認でき、他の人へファイルを渡す際にも理解されやすい方法です。
【操作のポイント】判定列をフィルターで対象だけにすると、数式の結果を検索条件として扱えます。
ワイルドカードと高度な条件抽出
続いては、入力パターンが決まっているデータや、より細かな条件を扱うためのワイルドカードと高度な条件抽出を確認していきます。
| 管理番号 | 件名 | 区分 |
|---|---|---|
| TK-001 | 東京 モニター交換 | 修理 |
| OS-002 | 大阪 プリンター見積 | 営業 |
アスタリスクを使うあいまい検索
テキストフィルターでは、任意の文字列を表すワイルドカードとしてアスタリスクを使えます。
たとえば東京と入力する代わりに、東京の前後に任意の文字があるデータを意識した条件を設定できます。
ただし通常の指定の値を含むでは、文字列の一部を検索できるため、ワイルドカードを使わなくてもよいケースが多いでしょう。
管理番号のように文字数や記号の位置が決まっているデータでは、ワイルドカードによる条件指定が役立ちます。
【操作のポイント】記号そのものを検索したい場合は、ワイルドカードとして扱われないよう入力内容を確認します。
詳細設定フィルターの条件範囲
通常のオートフィルターでは扱いにくい複数条件は、データタブの詳細設定を利用する方法もあります。
詳細設定では、元の見出しと同じ列名を別の場所にコピーし、その下に検索条件を入力します。
同じ行に条件を書くとAND条件になり、別の行に条件を書くとOR条件になる仕組みです。
条件範囲の考え方
地域と担当者を同じ行に置くと、東京かつ田中の条件です。
地域の東京と大阪を別の行に置くと、東京または大阪の条件です。
詳細設定では、条件範囲の見出しを元データの見出しと完全に一致させる必要があります。
【操作のポイント】詳細設定を使う前に、条件範囲の見出しに余分なスペースがないか確認します。
テーブル機能による検索範囲管理
データが毎月追加される場合は、一覧をテーブルとして設定しておくとフィルター範囲が自動で広がります。
表内のセルを選択して挿入タブからテーブルを選び、先頭行をテーブルの見出しとして使用する設定を確認します。
テーブル化した後に新しい行を最終行の下へ入力すると、書式や数式、フィルター範囲が引き継がれます。
継続的に更新する売上表や顧客リストでは、テーブル化によって検索漏れを防ぎやすくなります。
【操作のポイント】テーブル名をわかりやすく設定すると、数式や集計でも参照先を判別しやすくなります。
複数キーワード検索で抽出できない場合の確認
続いては、条件を設定したのに目的のデータが表示されない場合の確認項目を解説していきます。
| 確認項目 | 起こりやすい原因 | 対処 |
|---|---|---|
| 文字列 | 空白や表記ゆれ | 置換やTRIM関数 |
| 日付 | 文字列形式 | 日付形式へ変換 |
余分な空白と表記ゆれ
見た目は同じ文字でも、セルの先頭や末尾に空白が入っていると、完全一致の条件では別の値として扱われます。
全角スペースと半角スペースの違い、株式会社の有無、部署名の略称なども検索漏れの原因です。
余分な半角スペースを削除したい場合は、TRIM関数で文字列を整える方法があります。
=TRIM(A2)
データの入力ルールを統一しておくことが、後からフィルターや検索を行う際の精度につながります。
【操作のポイント】検索前に一件だけ目視で確認し、実際に入っている文字列を基準に条件を作成します。
数値と文字列のデータ形式
売上や管理番号が数値として入力されているか、文字列として入力されているかによって、利用できるフィルターが変わります。
セル左上の緑色の三角形や、左寄せと右寄せの表示は、データ形式を確認する手がかりになります。
日付らしく見えても文字列として保存されている場合、日付フィルターで月別に絞り込めないことがあります。
文字列の数値を変換するには、エラー表示から数値に変換を選ぶか、区切り位置機能を利用します。
【操作のポイント】日付、金額、数量などは入力時点でデータ形式をそろえ、文字列と混在させません。
フィルター範囲と非表示行
データの途中に空白行があると、フィルターの対象範囲が空白行の手前で止まることがあります。
また、手動で非表示にした行とフィルターで非表示になった行が混在すると、抽出結果を把握しにくくなります。
フィルターを一度クリアし、表の全範囲を選択して設定し直すと解決する場合があります。
検索対象を追加した後に結果へ反映されないときは、テーブル化するか、フィルターの範囲を再設定してください。
【操作のポイント】データ一覧には空白行を入れず、補足情報は表の外側へ配置します。
まとめ エクセルで複数キーワードを検索する方法(フィルター)
エクセルで複数キーワードを検索する場合は、まず同じ列で候補を複数選ぶのか、同じセル内に複数語を含むデータを探すのかを整理します。
同じ列のチェックボックスによる複数選択は、東京または大阪のようなOR条件の抽出に向いています。
別々の列にフィルターを設定すると、地域が東京で担当者が田中のようなAND条件として絞り込めます。
同じセル内に二つの語句が必要な場合は、テキストフィルターのAnd条件、またはSEARCH関数とAND関数を組み合わせる方法が有効です。
複雑な条件を繰り返し使う場合は、補助列に判定式を作成し、対象だけをフィルターで表示する方法もおすすめです。
抽出できないときは、余分な空白、表記ゆれ、数値と文字列の違い、フィルター範囲を確認しましょう。
OR条件とAND条件の違いを理解しておけば、売上管理、顧客リスト、在庫表、問い合わせ一覧など、多くのExcel作業を効率よく進められます。