Excelの「フィルターオプション」検索条件範囲の活用術18選|基本から応用まで徹底解説
Microsoft Excelの「フィルターオプション」(詳細フィルター)は、2つ以上の条件を満たすデータを抽出したいときに非常に便利な機能です。本記事では、検索条件範囲(Criteria Range)を使ったフィルターオプションのさまざまな活用方法を、具体的な手順とともに詳しく解説します。
練習用ワークブックは記事内からダウンロードできますので、ぜひ実際に操作しながら学んでください。
Excelのフィルターオプション検索条件範囲の18の活用方法
1. 数値や日付を抽出するための検索条件範囲
まずはサンプルデータセットを確認しましょう。B列からE列には売上に関するさまざまなデータが入力されています。ここでは、販売数量が10より大きいデータをすべて抽出する例を見ていきましょう。
- まず、「データ」タブの「並べ替えとフィルター」グループにある「詳細設定」コマンドを選択します。「フィルターオプション」ダイアログボックスが表示されます。
- 次に、リスト範囲として表全体(B4:E14)を選択します。
- 検索条件範囲としてセル(C17:C18)を指定します。
- 「OK」をクリックします。
これで、数量が10より大きいデータだけが表示されます。
ポイント:
1. 検索条件は必ず2行以上で指定してください。
2. フィルター条件を適用する列の見出し(ヘッダー)を使用します。
2. 文字列を検索条件で絞り込む方法
数値や日付だけでなく、論理演算子を使って文字列を比較することもできます。このセクションでは、完全一致での抽出と、特定の文字で始まる値の抽出という2つのパターンを紹介します。
2.1 文字列の完全一致で抽出する
この方法では、入力したテキストと完全に一致する値のみが返されます。売上データに新しい「City(都市)」列を追加した次のデータセットを例に、都市が「NEW YORK」のデータだけを抽出してみましょう。以下の手順で実行できます。
- まず、セルC18を選択し、次の数式を入力します。
=EXACT(D5," NEW YORK")
- Enterキーを押します。
- 次に、以下の範囲をフィルター条件として指定します。
リスト範囲:B4:F14
検索条件範囲:C17:C18
- 「OK」をクリックします。
これで、都市が「NEW YORK」のデータだけが抽出されます。
2.2 特定の文字で始まる値を抽出する
今度は完全一致ではなく、「特定の文字で始まる」という条件で文字列を絞り込みます。ここでは、「New」という単語で始まる都市名のデータだけを抽出する方法を見ていきましょう。
- まず、「フィルターオプション」ダイアログボックスで以下の範囲を指定します。
リスト範囲:B4:F14
検索条件範囲:C18:C19
- 「OK」をクリックします。
これで、「New」で始まるすべての都市のデータが表示されます。
3. ワイルドカードを使った抽出
ワイルドカード文字の使用も、検索条件範囲を活用する有効な手段です。Excelには主に3種類のワイルドカードがあります。
?(疑問符)- テキスト内の任意の1文字を表します。
*(アスタリスク)- 任意の数の文字を表します。
~(チルダ)- テキスト内にワイルドカード文字そのものが含まれていることを表します。
アスタリスク(*)を使えば、データセットから特定のテキスト文字列を検索できます。この例では、「J」で始まる名前の営業担当者を抽出します。以下の手順に従ってください。
- まず、「フィルターオプション」ウィンドウを開き、以下の範囲を指定します。
リスト範囲:B4:F14
検索条件範囲:C17:C18
- 「OK」をクリックします。
これで、「J」で始まる営業担当者の名前だけが表示されます。
関連記事:Excelの詳細フィルター(複数列・複数条件、数式使用、ワイルドカード)
4. 数式を検索条件として使う方法
検索条件範囲のもう一つの活用法が、数式の適用です。この例では、売上金額が$350より大きいデータを抽出します。以下の手順で実行しましょう。
- まず、セルC19を選択し、次の数式を入力します。
=F5>350
- 「OK」をクリックします。
この数式は、売上金額が$350より大きいかどうかを各行で判定します。
- 次に、「フィルターオプション」ダイアログボックスで以下の範囲を指定します。
リスト範囲:B4:F14
検索条件範囲:C17:C19
- 「OK」をクリックします。
これで、売上が$350より大きいデータだけが表示されます。
5. AND条件(かつ)による抽出
次に、検索条件範囲にAND論理を組み込む方法を紹介します。AND論理では2つの条件を使用し、両方の条件を満たすデータのみが出力されます。このデータセットでは、都市がNew Yorkであり、かつ売上額が200以上であるデータを抽出します。
- まず、「フィルターオプション」ダイアログボックスを開き、以下の範囲を指定します。
リスト範囲:B4:F14
検索条件範囲:C18:C19
- 「OK」をクリックします。
これで、都市がNew Yorkで、売上額が$250より大きいデータセットだけが表示されます。
6. OR条件(または)による抽出
AND論理と同様に、OR論理も2つの条件を使用します。ただし、AND論理が両方の条件を満たす必要があるのに対し、OR論理はどちらか一方の条件を満たしていれば出力されます。ここでは、都市がNew YorkとTexasのデータだけを抽出します。
- まず、「フィルターオプション」ダイアログボックスを開き、以下の範囲を入力します。
リスト範囲:B4:F14
検索条件範囲:C18:C20
- 「OK」をクリックします。
これで、New YorkとTexasのデータだけが取得できます。
7. AND条件とOR条件の組み合わせ
複数の条件でデータを絞り込みたい場合があります。そのようなときは、ANDとORの論理を組み合わせると便利です。次のデータセットから、指定した条件に基づいてデータを抽出してみましょう。
- まず、「フィルターオプション」ダイアログボックスを開き、以下の条件を指定します。
リスト範囲:B4:F14
検索条件範囲:C18:C20
- 続けて「OK」をクリックします。
これで、条件に一致するデータセットだけが表示されます。
8. 特定の列だけを別の場所に抽出する
この例では、データセットの一部だけをフィルターで抽出し、抽出結果を別の列にコピーします。以下の手順で実行してみましょう。
- まず、「フィルターオプション」ダイアログボックスで以下の条件を指定します。
リスト範囲:B4:F14
検索条件範囲:C18:C20
- 「指定した範囲」オプションを選択します。
- 抽出範囲にH8:I10を入力します。
- 「OK」をクリックします。
これで、条件に従ってH8:I10にフィルター済みのデータが表示されます。
9. フィルター後に別のワークシートへデータをコピーする
前の例では同じワークシート内にコピーしましたが、この例では別のワークシートにデータをコピーします。以下の手順で実行してください。
- まず、フィルター後のデータをコピーする先の「Another Worksheet-2」に移動します。
「Another Worksheet-2」には「City」と「Sales」の2つの列があるのが確認できます。
- 次に、「フィルターオプション」ダイアログボックスを開きます。
- 続けて「Another Worksheet-1」に移動し、以下の条件を指定します。
リスト範囲:B4:F14
検索条件範囲:C18:C19
- 「指定した範囲」オプションを選択します。
- その後、「Another Worksheet-2」に移動し、抽出範囲としてB2:C4を選択します。
- 「OK」をクリックします。
これで、「Another Worksheet-2」にフィルター済みのデータが表示されます。
10. 重複しない一意のレコードを抽出する
このケースでは、特定の列から重複のない一意の値だけを抽出します。次のデータセットから、都市名の一意の値を別の列に取り出してみましょう。
- まず、「フィルターオプション」ウィンドウを開き、以下の範囲を指定します。
リスト範囲:D4:D14
- 次に、「指定した範囲」オプションを選択します。
- 抽出範囲にH4:H8を入力します。
- 「重複するレコードは無視する」チェックボックスにチェックを入れます。
- 「OK」をクリックします。
これで、H列に一意の都市名だけが表示されます。
11. 平日(月曜~金曜)の日付を抽出する
検索条件範囲を使えば、平日のデータを抽出することもできます。以下のデータセットを使って、この手順を説明します。
- まず、セルC19を選択し、次の数式を入力します。
=AND(WEEKDAY(B5)<>1,WEEKDAY(B5)<>7)
- 次に、「フィルターオプション」ダイアログボックスで以下の範囲を設定します。
リスト範囲:B4:F14
検索条件範囲:C18:C19
- 「OK」をクリックします。
これで、日付列から平日の値だけが抽出されます。
🔎 数式の仕組み:
- WEEKDAY(B5)<>1:「1」は日曜日を表します。この部分は、日付が日曜日ではないという条件を設定しています。
- WEEKDAY(B5)<>7:「7」は土曜日を表します。この部分は、日付が土曜日ではないという条件を設定しています。
- AND(WEEKDAY(B5)<>1,WEEKDAY(B5)<>7):日付が土曜日でも日曜日でもない(つまり平日である)という条件を設定しています。
12. 週末(土日)の日付を抽出する
逆に、日付列から週末のデータを抽出することも可能です。以下のデータセットを使った手順を見てみましょう。
- まず、セルC19を選択し、次の数式を入力します。
=OR(WEEKDAY(B5)=1,WEEKDAY(B5)=7)
- Enterキーを押します。
- 次に、「フィルターオプション」ダイアログボックスで以下の範囲を指定します。
リスト範囲:B4:F14
検索条件範囲:C18:C19
- 「OK」をクリックします。
これで、日付列に週末の値だけが表示されます。
13. 平均値より上・下のデータを抽出する
このセクションでは、検索条件範囲を使って平均値より上または下の値を計算・抽出します。ここでは、平均売上額より大きい売上値だけをフィルターします。
- まず、セルC19を選択し、次の数式を入力します。
=E5>AVERAGE(E5:E14)
- 次に、「フィルターオプション」ダイアログボックスを開き、以下の範囲を入力します。
リスト範囲:B4:F14
検索条件範囲:C18:C19
- 「OK」をクリックします。
これで、平均値より大きい売上額のデータセットだけが取得できます。
14. OR条件で空白セルを抽出する
データセットに空白セルが含まれている場合、フィルターオプションを使って空白セルだけを抽出できます。
次のデータセットには空白セルが含まれています。以下の数式で検索条件を設定しました。
=B5=""
- まず、「フィルターオプション」ダイアログボックスを開き、以下の条件を入力します。
リスト範囲:B4:F14
検索条件範囲:C17:C22
- 「OK」をクリックします。
これで、空白セルのみで構成されるデータセットが取得できます。
15. 空白以外のセルをAND・OR条件で抽出する
前の例では空白セルを抽出しましたが、この例では逆に空白セルを除外します。以下の数式で検索条件を設定します。
=B5<>""
- まず、「フィルターオプション」ダイアログボックスを開き、以下の範囲を入力します。
リスト範囲:B4:F14
検索条件範囲:C17:G18
- 「OK」をクリックします。
これで、空白セルを含まないデータセットが取得できます。
16. 上位5件のレコードを抽出する
次に、フィルターオプションを使ってデータセットから上位5件のレコードを抽出します。この例では、Sales(売上)列の上位5つの値を取り出します。まず、以下の数式に基づいて検索条件を設定します。
=F5>=LARGE($F$5:$F$14,5)
- まず、「フィルターオプション」ダイアログボックスを開き、以下の範囲を入力します。
リスト範囲:B4:F14
検索条件範囲:C17:C18
- 「OK」をクリックします。
これで、Sales列の上位5件のレコードが取得できます。
17. 下位5件のレコードを抽出する
フィルターオプションは、下位5件のレコードを抽出するのにも使えます。Sales列の下位5件を求めるには、以下の数式で検索条件を作成します。
=F5<=SMALL($F$5:$F$14,5)
- まず、「フィルターオプション」ダイアログボックスに以下の範囲を入力します。
リスト範囲:B4:F14
検索条件範囲:C17:C18
- 続けて「OK」をクリックします。
最後に、Sales列の下位5つの値が表示されます。
18. リストとの一致・不一致に基づいて行を抽出する
2つの列や行を比較して、特定の値を残したり除外したりしたい場合があります。そんなときは一致判定の条件を活用できます。
18.1 リスト内の項目と一致するデータを抽出する
2つの都市列を持つ次のデータセットを想定します。この2つの列の間で一致する項目だけを取り出します。そのために、以下の数式で検索条件を設定します。
=C5=E5
- まず、「フィルターオプション」を開き、以下の範囲を入力します。
リスト範囲:B4:F14
検索条件範囲:C17:C18
- 「OK」をクリックします。
最後に、2つの都市列で同じ値になっているデータだけが表示されます。
18.2 リスト内の項目と一致しないデータを抽出する
前の例は一致する項目の抽出でしたが、この例では一致しない項目をフィルターします。以下の数式で検索条件を設定します。
=C5<>E5
- まず、「フィルターオプション」で以下の範囲を入力します。
リスト範囲:B4:F14
検索条件範囲:C17:C18
- 続けて「OK」をクリックします。
最後に、C列とE列の都市の値が互いに一致していないデータだけが表示されます。
まとめ
本記事では、フィルターオプションの検索条件範囲に関するあらゆる活用方法を網羅的に解説しました。記事に添付された練習用ワークブックをダウンロードして、ぜひご自身でも試してみてください。不明な点やご提案がありましたら、下のコメント欄でお気軽にお知らせください。できるだけ早くお返事いたします。
関連記事
- Excelの詳細フィルターが動作しないときの原因と解決策
- Excelで動的な詳細フィルターを実現する方法(VBA・マクロ)
- VBAで詳細フィルターを使う手順ガイド
-
【Excel】データの入力規則ドロップダウンリストでデータを抽出・絞り込む方法(2つの実例付き)
この記事では、データの入力規則(Data Validation)によるドロップダウンリストを使って、Excelのデータを抽出・絞り込む方法を解説します。通常、Microsoft Excelで特定のデータを取り出すにはフィルター機能を使用しますが、ドロップダウンリストでも同様のことが可能です。まずExcelのデータの入力規則でドロップダウンリストを作成し、その後、リストでの選択内容に応じて該当する行を自動的に抽出する手順をご紹介します。 この記事で使用している練習用ワークブックはダウンロードしてご利用いただけます。 データの入力規則ドロップダウンリストでフィルタリングする2つの方法 ここでは、複
-
Excelで色とテキストの両方を条件にフィルターをかける方法(3つの簡単なステップ)
Excelでは、セルの色でフィルターをかけることも、特定のテキストで絞り込むことも簡単に行えます。しかし、この2つの条件を組み合わせて同時にフィルターをかける直接的な機能は用意されていません。本記事では、その回避策となる実践的な方法をわかりやすく解説します。手順は短く、初心者の方でもすぐに実践できる内容です。ぜひ最後までご覧ください。 練習用ワークブックは、下のダウンロードボタンから入手できます。 Excelで色とテキストの両方を使ってフィルターをかける手順 以下のようなデータセットを想定します。ここでは、色付きのセルは空白になっています。E列の「Yes」というテキストと、黄色く塗られたセル