【Excel】エクセルでフィルターを3つ以上の条件で絞り込む方法
Excelのフィルターは、担当者・商品名・日付・金額・ステータスなど複数の条件を組み合わせて、必要なデータだけを素早く抽出できる機能です。
ただし、通常の▼ボタンによる絞り込みでは条件の考え方が分かりにくく、3つ以上の条件を指定したい場面で迷うことがあります。
たとえば「東京支店で、売上が10万円以上で、進捗が完了のデータ」のように、複数列にまたがる条件を設定するケースです。
この記事では、オートフィルター、数値フィルター、日付フィルター、詳細設定、FILTER関数を使い分けながら、3つ以上の条件で抽出する方法を解説します。
複数条件の絞り込みで押さえたいポイント
・別の列に指定する条件は基本的にAND条件
・同じ列で複数の値を選ぶとOR条件
・複雑な条件は詳細設定やFILTER関数が便利
Excelで3つ以上の条件を指定するフィルター操作
それではまず、複数列のオートフィルターで3つ以上の条件を設定する基本操作について解説していきます。
| 担当者 | 支店 | 売上 | 進捗 | 受注日 |
|---|---|---|---|---|
| 佐藤 | 東京 | 125000 | 完了 | 2026/9/1 |
| 田中 | 大阪 | 98000 | 進行中 | 2026/9/3 |
| 鈴木 | 東京 | 150000 | 完了 | 2026/9/5 |
表全体へのフィルター設定
まずは、1行目に見出しがある表の中から任意のセルを1つ選択します。
[データ]タブを開き、[フィルター]をクリックすると、見出しセルの右端に▼ボタンが表示されます。
フィルターは表全体を選択してから実行しなくても、表内のセルを選択した状態で設定できます。
途中に空白行や空白列があるとExcelが表の範囲を正しく認識できない場合があるため、データ一覧は連続した形で作成しましょう。
すでにテーブルとして書式設定されているデータでは、通常は見出しにフィルターが自動表示されています。
テーブル化しておくと、データを最終行の下へ追加したときも抽出範囲が広がりやすく、日々更新する売上表や顧客リストに向いています。
フィルターを設定する前に、見出し行を1行目に置き、各列に重複しない項目名を付けておくと操作ミスを減らせます。
支店と進捗を組み合わせる抽出
次に、支店列の▼をクリックして、一覧から「東京」だけにチェックを残して[OK]を選びます。
続けて進捗列の▼をクリックし、「完了」だけにチェックを入れて[OK]をクリックしてください。
この状態では、支店が東京で、かつ進捗が完了している行だけが表示されます。
異なる列にフィルターを重ねると、すべての条件を満たすデータだけが残るAND条件になります。
条件に一致しない行は削除されたわけではなく、行番号が飛んだ状態で非表示になります。
そのため、絞り込んだ結果を確認した後に条件を解除すれば、元の一覧へ戻せます。
【操作のポイント】複数列を順番に絞り込んでも、先にどの列を設定するかで最終結果は変わりません。
売上条件を追加する絞り込み
3つ目の条件として、売上列の▼をクリックします。
[数値フィルター]から[指定の値以上]を選び、表示された入力欄に「100000」と入力して[OK]をクリックしましょう。
これで、東京支店、完了、売上100000円以上という3条件に一致するデータだけを確認できます。
数値列はチェックボックスだけで探すより、数値フィルターを使うほうが条件を正確に指定できます。
表示件数を確認したいときは、Excel画面下部のステータスバーを見るか、抽出後の行数を確認します。
【操作のポイント】売上のセルに「円」などの文字が直接入力されていると数値フィルターが使えないため、表示形式で単位を付けるのがおすすめです。
数値・日付・文字列による複数条件の指定
続いては、数値・日付・文字列それぞれの条件を使い、抽出内容をさらに細かくする方法を確認していきます。
| 商品 | 地域 | 金額 | 受注日 | 区分 |
|---|---|---|---|---|
| A商品 | 関東 | 120000 | 2026/9/2 | 通常 |
| B商品 | 関西 | 180000 | 2026/8/28 | 優先 |
| A商品 | 関東 | 220000 | 2026/9/10 | 優先 |
数値フィルターの範囲条件
売上や数量を一定の範囲で抽出したい場合は、[数値フィルター]の[指定の値以上]、[指定の値以下]、[指定の範囲内]を使います。
たとえば金額が100000以上200000以下のデータなら、[指定の範囲内]を選択し、下限と上限に数値を入力します。
「以上」と「以下」を別々に指定するより、範囲内を使うと入力画面が分かりやすくなります。
金額にカンマが表示されていても、値が数値として保存されていれば問題ありません。
一方で、左寄せ表示の数値や緑色のエラー表示があるセルは文字列の可能性があり、先に数値へ変換する必要があります。
100000以上200000以下の意味
100000 ≤ 金額 ≤ 200000
境界の100000と200000も抽出対象に含まれます。
日付フィルターの期間指定
受注日や更新日を条件に加える場合は、日付列の▼から[日付フィルター]を選択します。
[指定の範囲内]を使えば、「2026年9月1日以降、2026年9月30日以前」のような期間指定が可能です。
日付は見た目が同じでも、文字列として入力されていると日付フィルターが正常に動作しません。
日付列では、年・月・日ごとの階層チェックを使って月単位に絞り込む方法もあります。
毎月の集計では、対象月の初日から末日までの範囲を指定すると、月またぎや年度をまたぐデータにも対応しやすいでしょう。
【操作のポイント】日付条件を設定する前に、セルの表示形式ではなく実際のデータ型が日付であることを確認します。
文字列フィルターの部分一致
商品名、顧客名、担当者名などの文字列を絞り込むときは、[テキストフィルター]を利用します。
たとえば商品名に「新製品」を含む行を探す場合は、[含む]を選択して「新製品」と入力します。
完全に一致する名称だけを抽出したい場合は[指定の値に等しい]、先頭文字で絞る場合は[指定の値で始まる]が便利です。
表記ゆれがあるデータでは、完全一致よりも「含む」を使うと抽出漏れを防ぎやすくなります。
ただし「東京」を含むという条件では、「東京都」や「東京営業所」も対象になるため、目的に応じて条件を選んでください。
【操作のポイント】文字列を条件にするときは、全角と半角、スペース、旧字体などの表記ゆれも確認しましょう。
同じ列でOR条件を設定するチェックボックス
続いては、同じ列で複数の値を対象にするOR条件と、別列のAND条件を組み合わせる考え方を解説していきます。
| 担当者 | 支店 | 商品 | 金額 | 進捗 |
|---|---|---|---|---|
| 佐藤 | 東京 | A商品 | 125000 | 完了 |
| 高橋 | 大阪 | A商品 | 132000 | 完了 |
| 伊藤 | 名古屋 | B商品 | 140000 | 完了 |
複数項目のチェックボックス選択
支店列で東京と大阪の両方を対象にしたいときは、▼をクリックして[すべて選択]のチェックを外します。
その後、「東京」と「大阪」にだけチェックを入れて[OK]をクリックします。
この操作では、支店が東京または大阪であるデータが表示されます。
同一列のチェックボックスを複数選択した場合は、いずれかに一致すれば表示されるOR条件です。
選択肢が多い場合は、フィルターメニュー上部の検索欄へ文字を入力すると、候補を素早く探せます。
大量の店舗名や商品コードから対象を選ぶ場面で便利な機能です。
支店が東京または大阪という条件
支店=東京 OR 支店=大阪
OR条件とAND条件の組み合わせ
支店を東京または大阪に絞り込んだ後、進捗列で完了だけを選ぶと、条件はさらに追加されます。
この場合の抽出条件は、「支店が東京または大阪」であり、かつ「進捗が完了」となります。
列の内側はOR、列と列の間はANDと覚えると、フィルターの結果を予測しやすくなります。
さらに金額を100000以上に指定すれば、3列以上にまたがる条件でも通常のオートフィルターだけで処理できます。
抽出後に見出しの▼が漏斗の形へ変わっている列が、現在条件を設定している列です。
【操作のポイント】思ったより件数が少ないときは、別の列に残っているフィルター条件も確認します。
フィルター条件の解除と再設定
特定の列だけ条件を解除するには、その列の▼から[フィルターをクリア]を選択します。
表全体の条件を一度に解除するには、[データ]タブの[クリア]をクリックしてください。
[クリア]はデータそのものを消す操作ではなく、フィルターと並べ替えの設定を解除する操作です。
頻繁に同じ条件で絞り込む場合は、条件をメモするか、元データをテーブル化しておくと作業の再現性が上がります。
【操作のポイント】抽出結果だけをコピーする前に、必要な条件がすべて反映されているか行番号と件数で確認しましょう。
詳細設定による複雑な抽出条件
続いては、通常のフィルターでは表現しにくい条件を指定できる詳細設定について解説していきます。
| 支店 | 売上 | 進捗 | 担当者 |
|---|---|---|---|
| 東京 | 125000 | 完了 | 佐藤 |
| 大阪 | 132000 | 完了 | 高橋 |
条件範囲の作成
詳細設定では、元データとは別の場所に条件範囲を作成します。
条件範囲の見出しは、元データの見出しと完全に同じ文字列で入力することが重要です。
たとえばG1に「支店」、H1に「売上」、I1に「進捗」と入力し、その下の行へ「東京」「>=100000」「完了」を入力します。
詳細設定では同じ行に並んだ条件がAND条件として扱われます。
条件範囲の見出しが「売上金額」のように元表と異なる場合、Excelは対象列を判断できません。
条件範囲の例
支店 売上 進捗
東京 >=100000 完了
別行を使ったOR条件
詳細設定でOR条件を使いたい場合は、条件を別の行に入力します。
たとえば「東京で売上100000以上」または「大阪で売上150000以上」を抽出するなら、2行の条件を用意します。
1行目の条件には東京と>=100000を入力し、2行目には大阪と>=150000を入力してください。
詳細設定では別行に入力した条件がOR条件として判断されるため、複数パターンの抽出に適しています。
この仕組みを使えば、複数列を含む条件グループをいくつも設定できます。
【操作のポイント】ANDとORが混在する場合は、紙に条件を書き出してから条件範囲へ配置すると間違いにくくなります。
詳細設定フィルターの実行
元データ内のセルを選択し、[データ]タブの[詳細設定]をクリックします。
[リスト範囲]に元の表全体、[検索条件範囲]に作成した条件表を指定します。
抽出結果を元の場所に表示するなら[指定した範囲]を選び、コピー先を指定する方法もあります。
元の一覧を残したまま別の場所へ抽出結果を作りたいときは、指定した範囲へのコピーが便利です。
重複しないレコードだけを抽出するチェック項目もあり、顧客名や商品名の一覧を作る際に活用できます。
【操作のポイント】詳細設定の条件範囲には、元データと同じ見出しを必ず含めて選択します。
FILTER関数を使った自動抽出
続いては、Microsoft 365やExcel 2021以降で利用できるFILTER関数による複数条件の抽出を確認していきます。
| A列 | B列 | C列 | D列 |
|---|---|---|---|
| 担当者 | 支店 | 売上 | 進捗 |
| 佐藤 | 東京 | 125000 | 完了 |
| 高橋 | 大阪 | 132000 | 完了 |
AND条件のFILTER関数
FILTER関数は、条件に一致する行を別の場所へ自動表示する関数です。
A1からD100にデータがあり、東京支店、売上100000以上、完了のデータを抽出する場合は、次のように入力します。
=FILTER(A2:D100,(B2:B100=”東京”)*(C2:C100>=100000)*(D2:D100=”完了”),”該当なし”)
FILTER関数では条件式をアスタリスクで掛け合わせるとAND条件になります。
数式は抽出先の左上セルだけに入力します。
結果は必要な行数と列数へ自動的に広がるため、数式の右側や下側には空白を確保しておきましょう。
サンプルデータでは1行目が見出しであるため、抽出範囲はA2から開始しています。
【操作のポイント】FILTER関数の抽出範囲と、各条件範囲の行数は必ずそろえます。
OR条件を含むFILTER関数
東京または大阪というOR条件をFILTER関数に加える場合は、条件式をプラス記号で結びます。
=FILTER(A2:D100,((B2:B100=”東京”)+(B2:B100=”大阪”))*(C2:C100>=100000)*(D2:D100=”完了”),”該当なし”)
FILTER関数ではプラス記号がOR条件、掛け算がAND条件の役割を持ちます。
括弧を付けることで、東京または大阪という条件グループを先に判定できます。
条件が多い数式では、改行やインデントを使って見やすく整えると、後から修正するときも安心です。
【操作のポイント】OR条件を複数列にまたがって作るときは、どこまでを括弧で囲むかを慎重に確認します。
抽出結果の更新とエラー対策
元データの値を変更すると、FILTER関数の抽出結果も自動的に更新されます。
条件に一致するデータがない場合はエラーになりやすいため、第3引数に「該当なし」のような表示を指定しておくと分かりやすくなります。
抽出結果の範囲に値が入力されていると、スピルエラーが表示されて結果を展開できません。
その場合は、数式の周囲にある入力済みセルを移動または削除し、結果を広げる空白範囲を作ります。
フィルター操作は一時的な確認、FILTER関数は抽出表を常に更新したい場面に適した使い分けです。
【操作のポイント】FILTER関数の結果は直接編集せず、修正が必要な場合は元データ側を変更します。
まとめ エクセルでフィルターを3つ以上の条件で絞り込む方法
Excelでフィルターを3つ以上の条件で絞り込むときは、まず通常のオートフィルターで複数列に条件を追加する方法を試すとよいでしょう。
異なる列の条件はAND条件となり、同じ列のチェックボックスで複数項目を選択した場合はOR条件となります。
数値は数値フィルター、日付は日付フィルター、文字列はテキストフィルターを使うことで、対象データを正確に抽出できます。
複数のAND条件とOR条件が複雑に混在する場合は、詳細設定の条件範囲を利用すると整理しやすくなります。
Microsoft 365などではFILTER関数を使えば、条件に一致した一覧を別の場所へ自動表示することも可能です。
条件が増えたときほど、列ごとの条件と同じ列内の条件を分けて考えることが、正しい抽出への近道です。
元データの見出し、数値形式、日付形式を整えたうえで、目的に合うフィルター方法を選んでいきましょう。