Excelで一覧表を扱っていると、複数のキーワードを含むデータだけを素早く探したい場面があります。
たとえば顧客名に「東京」と「商談」の両方を含む行、商品名に「青」または「大」を含む行、備考欄に指定語のいずれかが入った行だけを確認したいケースです。
このような検索は、Ctrl+Fの検索機能だけでは一覧を比較しにくいため、オートフィルターの文字列フィルターを使う方法が実務では便利です。
複数条件の指定では、条件を同時に満たすAND検索と、どちらかを満たせばよいOR検索の違いを理解することが重要になります。
複数キーワードの絞り込みで押さえたいポイント
・同じ列ではANDとORを選んで条件を組み合わせる
・別々の列では各列にフィルターを設定して絞り込む
・検索文字列の前後にアスタリスクを付ける代わりに「含む」を選ぶ
この記事では、Excelのフィルターで複数キーワードを検索する方法を、サンプルデータと画面イメージを交えて解説します。
エクセルで複数キーワードを検索する基本操作
| 顧客名 | 案件名 | 担当者 | 備考 |
|---|---|---|---|
| 東京商事 | 新商品商談 | 田中 | 訪問予定 |
| 大阪物産 | 定期契約 | 佐藤 | 東京展示会で面談 |
| 東京物流 | 配送見積 | 鈴木 | 商談継続 |
それではまず、フィルターを有効にして複数キーワードを検索する基本操作について解説していきます。
結論として、検索対象の列を選び、文字列フィルターから条件を二つ指定すれば、目的の行だけを一覧に残せます。
フィルターは1行目の見出しを基準に設定します。
サンプルデータでは1行目を「顧客名」「案件名」「担当者」「備考」のヘッダーとして扱います。
フィルターを設定する範囲
まずは、検索したい表の中にある任意のセルをクリックします。
表全体をドラッグして選択しなくても、データが連続している範囲ならExcelが自動的に一覧表を判断してくれます。
次にリボンのデータタブを開き、並べ替えとフィルターのグループにあるフィルターボタンをクリックしましょう。

1行目の各見出しの右側に下向き三角のボタンが表示されたら、フィルター設定は完了です。
表の途中に空白行や空白列があると、Excelが別の範囲として認識することがあります。
必要なら空白を埋めるか、対象範囲を選択してからフィルターを設定すると安定します。
【操作のポイント】フィルターを設定する前に、見出しが1行目にあり、結合セルが使われていないか確認しましょう。
検索したい列の選択
複数キーワードを含むかどうかを調べる列の、見出し右側にあるフィルター矢印をクリックします。
たとえば備考欄から「東京」と「商談」を探す場合は、備考のフィルター矢印を選択します。
表示されたメニューには、セルに実際に入力されている値の一覧と、文字列フィルターの項目があります。
値が少ない表ならチェックボックスを直接切り替える方法も使えますが、表記が増える業務データでは文字列フィルターが向いています。

文字列フィルターにマウスポインターを合わせると、指定の値に等しい、指定の値を含む、指定の値で始まるなどの条件を選べます。
部分一致で探すときは、指定の値を含むを選択するのが基本です。
【操作のポイント】検索語が文章の一部として入っている可能性があるときは、完全一致ではなく「含む」を選びます。
文字列フィルターの入力
文字列フィルターからユーザー設定のオートフィルターを開くと、条件を二つ入力できる小さな画面が表示されます。
上段の条件で「含む」を選び、右側の入力欄に最初のキーワードを入力します。
下段も「含む」を選び、二つ目のキーワードを入力すれば準備完了です。
二つの条件の間にある選択肢でANDまたはORを決めて、OKをクリックします。
条件に一致しない行は非表示になり、行番号が飛び飛びに表示されます。
これはデータが削除された状態ではなく、一時的に表示を絞り込んだ状態です。
【操作のポイント】検索を終えた後は、フィルター矢印から「フィルターをクリア」を選べば、全行を再表示できます。
同じ列でAND検索を行う方法
| 備考 | AND検索の結果 |
|---|---|
| 東京展示会で商談予定 | 表示 |
| 東京支店へ訪問 | 非表示 |
| 大阪で商談予定 | 非表示 |
続いては、同じ列に二つのキーワードが両方含まれるデータを探すAND検索を確認していきます。
AND検索は、たとえば備考欄に「東京」と「商談」の両方が入っている行だけを抽出したいときに使います。
AND検索の考え方
条件1を満たす かつ 条件2を満たすデータだけを表示します。
「東京」と「商談」で検索した場合、「東京展示会で商談予定」は残り、「東京支店へ訪問」は除外されます。
含む条件を二つ設定する手順
備考列など、文章が入力されている列のフィルター矢印をクリックします。
文字列フィルターからユーザー設定のフィルターを選択してください。
最初の条件は左側を「含む」にし、入力欄に「東京」と入力します。

次の条件も「含む」に設定し、入力欄には「商談」と入力します。
条件の中央にある選択肢はANDを選びます。
この設定により、一つのセル内に二語が共存している行だけが表示対象になります。
語の順番は問いませんので、「商談は東京支店で実施」という文章も検索結果に含まれます。
【操作のポイント】二つの語を別々の行に持つデータではなく、同じセルの文章内で両方を確認したいときにANDを使います。
表記ゆれを考慮した検索条件
実際の一覧では、「東京」「東京都」「東京支店」のように同じ意味でも表記が異なる場合があります。
この場合に「東京」を含むという条件にすると、より長い語句もまとめて検索できます。
一方で「商談」「打ち合わせ」「面談」のように意味が近い別語を探す場合は、一回のAND条件だけでは拾い切れません。
まず「商談」で絞り込み、必要に応じて条件を変えて「面談」も確認する方法が安全です。

フィルターの標準画面では、同一列に対して複雑な三語以上の条件を一度に組むよりも、条件を段階的に確認したほうが誤抽出を防げます。
検索結果の件数だけで判断せず、残った文章を数行確認することも大切です。
【操作のポイント】略称や旧名称があるデータは、想定される表記を事前に洗い出しておくと検索漏れを減らせます。
AND検索結果の確認と解除
フィルター適用後は、Excelの画面下部に表示件数の目安が出るため、想定と大きく違わないか確認します。
行番号が青色になるなど、通常の表示と異なる部分があれば、絞り込み中であることを判断できます。
検索結果を別シートに残したい場合は、表示されているセルだけをコピーして貼り付けます。
非表示の行までコピーしないように、必要に応じて可視セルのみを選択する操作を利用するとよいでしょう。
作業が終わったらフィルター矢印を開き、備考からフィルターをクリアをクリックします。
元の一覧が戻れば、他の条件を試す準備が整います。
【操作のポイント】フィルター解除はデータの削除ではありませんが、コピーや集計を行う前に表示範囲を必ず確認しましょう。
同じ列でOR検索を行う方法
| 案件名 | OR検索の結果 |
|---|---|
| 新商品商談 | 表示 |
| 契約更新の相談 | 表示 |
| 請求書の確認 | 非表示 |
続いては、二つのキーワードのうちどちらか一方を含む行を探すOR検索について確認していきます。
OR検索は、「商談」または「相談」を含む案件を広く抽出したい場合に役立ちます。
ORを選択する条件画面
案件名列のフィルター矢印をクリックし、文字列フィルターからユーザー設定のフィルターを選びます。
上段を「含む」にして「商談」と入力します。
下段も「含む」にして「相談」と入力してください。
このとき、二つの条件の間にある選択肢でORをクリックします。
ORは二つの条件のうち片方でも一致すれば表示する設定です。
「商談を含むが相談は含まない行」と「相談を含むが商談は含まない行」の両方を抽出できます。
ANDとORの違い
ANDは二語を両方含む行を探す条件です。
ORは二語のどちらかを含む行を探す条件です。
【操作のポイント】広く候補を集めたい最初の検索ではORを使い、候補を狭めたいときはANDに切り替えます。
チェックボックスを使うOR検索
セルの値が「未対応」「対応中」「完了」のように決まった候補から選べる場合は、フィルターメニューのチェックボックスでもOR検索ができます。
すべて選択のチェックを外し、表示したい項目だけにチェックを入れます。
二つ以上の項目にチェックを付けてOKをクリックすると、選択した値のいずれかに一致する行が表示されます。
これは文字列フィルターのORと同じく、複数候補をまとめて確認したい場合に便利です。
ただし、「商談予定」「商談完了」のように値の種類が多い文章データでは、チェック項目が多くなりやすいため文字列フィルターが扱いやすいでしょう。
完全に同じ値を選ぶ検索と、文章の一部を含む検索は使い分けが必要です。
【操作のポイント】定型の区分列はチェックボックス、自由入力の備考列は文字列フィルターという使い分けが分かりやすい方法です。
OR検索の対象を増やす考え方
標準のユーザー設定フィルターでは、画面上で指定できる文字列条件は基本的に二つです。
三語以上を対象にしたい場合は、チェックボックスに候補が出るよう補助列を作る方法や、フィルターを段階的に使う方法があります。
たとえば案件名に「商談」「相談」「見積」のいずれかを含む行を探すなら、検索用の補助列に判定式を入れると管理しやすくなります。
補助列の数式例
=OR(ISNUMBER(SEARCH(“商談”,B2)),ISNUMBER(SEARCH(“相談”,B2)),ISNUMBER(SEARCH(“見積”,B2)))
この数式を2行目に入力して下方向へオートフィルすると、いずれかの語を含む行はTRUEになります。
SEARCH関数は文字列の位置を調べ、見つかったときは数値を返します。
ISNUMBER関数で数値かどうかを判定し、OR関数で三つの判定をまとめる仕組みです。
サンプルデータは1行目をヘッダーとするため、数式は2行目から入力します。
【操作のポイント】検索語が三つ以上ある定例業務では、補助列のTRUEとFALSEにフィルターを設定すると再利用しやすくなります。
複数列を組み合わせて絞り込む方法
| 顧客名 | 担当者 | 抽出条件 |
|---|---|---|
| 東京商事 | 田中 | 顧客名に東京 かつ 担当者が田中 |
| 東京物流 | 鈴木 | 除外 |
続いては、顧客名と担当者など、複数の列にまたがるキーワード検索の方法を確認していきます。
列ごとにフィルターを重ねて設定すると、Excelは各列の条件をANDとして扱います。
顧客名と担当者を同時に絞り込む手順
最初に顧客名列のフィルター矢印から文字列フィルターを開き、「含む」にして「東京」と入力します。
この時点では、顧客名に東京を含む行が表示されます。
次に担当者列のフィルター矢印を開き、田中だけにチェックを入れるか、文字列フィルターで田中を指定します。
すると、顧客名に東京を含み、さらに担当者が田中である行だけが残ります。
別の列へフィルターを追加した場合、条件は自動的に絞り込み条件として積み重なります。
【操作のポイント】列をまたぐ条件では、条件ごとに検索対象の列を間違えないよう、見出しを確認してから操作しましょう。
日付や数値条件との組み合わせ
複数キーワードの検索は、文字列だけでなく日付や金額の条件と組み合わせることもできます。
たとえば備考に「商談」を含む行だけを表示した後、受注予定日を今月分に絞り込むと、対応が必要な案件を把握しやすくなります。
金額列では数値フィルターを使い、「以上」「以下」「指定の範囲内」などを選択できます。
商品名に「新作」を含み、売上金額が100000円以上というような条件も、各列にフィルターを設定するだけで作れます。
複数列フィルターの例
備考列は「商談」を含む
担当者列は「田中」
売上列は「100000以上」
この三条件を設定した場合、すべてを満たす行のみが表示されます。
【操作のポイント】条件を追加するたびに件数が減るため、どの条件で対象が消えたかを確認しながら設定するのがおすすめです。
フィルター状態を見失わない管理
複数列にフィルターを設定すると、どの列に何の条件をかけたか分からなくなることがあります。
フィルターが有効な列では、見出しの矢印アイコンが通常と異なる表示になります。
条件を一部だけ外したいときは、その列のフィルター矢印からフィルターをクリアを選びます。
すべての条件を一度に外したいときは、データタブのクリアを使うと効率的です。
フィルターのクリアは並べ替え順を元に戻す操作ではない点にも注意が必要です。
並べ替えも元に戻したい場合は、作業前に連番列を用意しておくと安心です。
【操作のポイント】共有する表では、フィルター中であることが分かるよう、検索条件をメモとして残しておくと確認作業が円滑です。
関数を使った複数キーワード判定
| B列の備考 | C列の判定式 | 結果 |
|---|---|---|
| 東京展示会で商談 | =AND(ISNUMBER(SEARCH(“東京”,B2)),ISNUMBER(SEARCH(“商談”,B2))) | TRUE |
| 東京支店へ訪問 | 同上 | FALSE |
続いては、検索条件を繰り返し使いたい場合に便利な、関数による複数キーワード判定について解説していきます。
補助列にTRUEまたはFALSEを表示してフィルターをかける方法なら、二語を超える条件も扱いやすくなります。
AND関数とSEARCH関数による判定
備考がB列にあり、1行目がヘッダーである場合、判定用のC2セルに次の数式を入力します。
=AND(ISNUMBER(SEARCH(“東京”,B2)),ISNUMBER(SEARCH(“商談”,B2)))
SEARCH関数は、指定した文字がB2セル内の何文字目にあるかを返します。
「東京」が見つかれば数値が返り、ISNUMBER関数の結果はTRUEになります。
見つからない場合はエラーになるため、ISNUMBER関数の結果はFALSEです。
AND関数は二つの結果がともにTRUEのときだけTRUEを返します。
数式の結果がTRUEになる行だけをC列のフィルターで表示すれば、AND検索と同じ結果になります。
【操作のポイント】数式を入力した後は、セル右下のフィルハンドルを下へドラッグしてオートフィルします。
OR関数によるいずれかの語の判定
「商談」または「相談」を含むかどうかを判定するなら、AND関数をOR関数に置き換えます。
=OR(ISNUMBER(SEARCH(“商談”,B2)),ISNUMBER(SEARCH(“相談”,B2)))
この数式では、どちらか一方のSEARCH関数が数値を返せば、最終結果はTRUEです。
検索語を三つに増やす場合も、OR関数の括弧内へ同じ形式の判定を追加できます。
語句をセルに入力しておき、数式から参照するようにすれば、検索条件を変更するたびに数式を書き換えずに済みます。
たとえばE2に「商談」、F2に「相談」を入力した場合は、SEARCH(E2,B2)のように参照できます。
定期的に検索語を変える業務では、検索語を別セルに置く設計が便利です。
【操作のポイント】検索条件のセルには分かりやすい見出しを付け、入力する人が数式の仕組みを知らなくても使える表にしましょう。
COUNTIF関数を使う簡易判定
ワイルドカードを使えるCOUNTIF関数でも、セルに特定の語を含むか判定できます。
=COUNTIF(B2,”*東京*”)>0
この数式は、B2セルに東京を含む場合にTRUEを返します。
アスタリスクは任意の文字列を表すワイルドカードで、検索語の前後に付けることで部分一致を表現します。
二語のAND検索では、COUNTIFによる判定をAND関数の中に二つ並べます。
=AND(COUNTIF(B2,”*東京*”)>0,COUNTIF(B2,”*商談*”)>0)
ただし、COUNTIF関数は大文字と小文字を区別せずに判定する仕様です。
英字の大小を区別したい特殊な場面では、別の関数を検討する必要があります。
【操作のポイント】数式で作った判定列にもフィルターを設定し、TRUEだけを選択すると対象行をすばやく確認できます。
まとめ エクセルで複数キーワードを検索する方法(フィルターで絞り込み)
Excelで複数キーワードを検索するには、まず表の1行目にヘッダーがあることを確認し、データタブからフィルターを設定します。
同じ列で二語を両方含むデータを探すなら、文字列フィルターの「含む」を二つ設定してANDを選びます。
二語のどちらかを含むデータを広く探すなら、同じ画面でORを選択しましょう。
別々の列にフィルターを設定した場合は、それぞれの列の条件をすべて満たす行だけが表示されます。
検索語が三つ以上ある場合や、毎月同じ検索を繰り返す場合は、SEARCH関数、ISNUMBER関数、AND関数、OR関数を使った補助列の作成が便利です。
フィルターは行を削除する機能ではないため、必要な情報を確認した後はフィルターをクリアして元の一覧へ戻せます。
ANDとORの違い、同じ列と別の列での絞り込み方を使い分けて、Excelの検索作業を効率化していきましょう。