Excelでは、複数の条件を使ってデータを抽出したい場合がよくあります。
しかしながら、カスタムオートフィルタのダイアログで指定できる条件は2つまでです。
3つ以上の条件でフィルタリングする方法をまとめます。
作業効率が大きく向上すると思います。
ヘルパーカラムを使ったフィルタリング
1つ目は、ヘルパーカラムを使って評価する方法です。
判定用のカラムを追加します。
OR条件のフィルタリング
まず、OR条件の説明です。
ステップ1: ヘルパーカラムの追加
データの隣の列に「ヘルパーカラム」を追加します。
この列には、条件が一致するかどうかを判定する計算式を入力します。
ステップ2: OR条件の判定式
次に、OR
関数とSEARCH
関数を組み合わせた以下の式をヘルパーカラムに入力します。
=IF(OR(ISNUMBER(SEARCH("A", A2)), ISNUMBER(SEARCH("B", A2)), ISNUMBER(SEARCH("C", A2))), "TRUE", "FALSE")
この式は、セルA2
に「A」「B」「C」のいずれかが含まれていればTRUE
を返します。
ステップ3: フィルタリング
ヘルパーカラムに「TRUE」が表示された行だけをフィルタリングします。フィルタをかけるためには、通常のExcelのフィルタ機能を使用して、ヘルパーカラムで「TRUE」になっている行だけを抽出します。
AND条件のフィルタリング
AND条件の場合も、同様に実現できます。
ステップ1: ヘルパーカラムの追加
OR条件と同様に、データの隣にヘルパーカラムを追加します。
ステップ2: AND条件の判定式
次に、AND
関数とSEARCH
関数を組み合わせた以下の式を入力します。
=IF(AND(ISNUMBER(SEARCH("A", A2)), ISNUMBER(SEARCH("B", A2)), ISNUMBER(SEARCH("C", A2))), "TRUE", "FALSE")
この式は、セルA2
に「A」「B」「C」がすべて含まれている場合にTRUE
を返します。
ステップ3: フィルタリング
OR条件と同様に、ヘルパーカラムに「TRUE」が表示された行をフィルタリングします。
FILTER関数を使ったフィルタリング(365や2019以降)
Excel 365や2019以降のバージョンでは、FILTER
関数を使って直接複数条件のフィルタリングが可能です。
これにより、データを別のセル範囲に抽出できます。
OR条件のフィルタリング
以下のFILTER
関数を使って、OR条件でフィルタリングします。
=FILTER(A2:A100, ISNUMBER(SEARCH("A", A2:A100)) + ISNUMBER(SEARCH("B", A2:A100)) + ISNUMBER(SEARCH("C", A2:A100)))
この式では、「A」「B」「C」のいずれかがセルA2:A100
に含まれている行を抽出します。+
演算子を使うことで、OR条件を実現しています。
AND条件のフィルタリング
AND条件の場合は、次のようにFILTER
関数を使用します。
=FILTER(A2:A100, ISNUMBER(SEARCH("A", A2:A100)) * ISNUMBER(SEARCH("B", A2:A100)) * ISNUMBER(SEARCH("C", A2:A100)))
この式では、「A」「B」「C」がすべてセルA2:A100
に含まれている行を抽出します。
*
演算子を使うことでAND条件を表現しています。
フィルター詳細設定を使ったフィルタリング
手順1: 条件範囲の準備
まず、詳細設定フィルタを使用するために、条件範囲をシート内に準備します。条件範囲は通常のデータとは別の場所に設定します。
- データとは別の空いているセルに、フィルタリング対象の列と同じヘッダーをコピーします。例えば、データのA列が「商品名」であれば、同じ「商品名」というヘッダーを条件範囲に作成します。
- 条件を指定する行をヘッダーの下に記入します。
OR条件の設定方法
OR条件を設定する場合は、別の行に条件を追加します。行ごとに「または(OR)」の条件として認識されます。
- 条件範囲を以下のように設定します。
商品名 |
---|
A |
B |
C |
この設定により、商品名が「A」、「B」、「C」を含むデータがフィルタリングされます。
デフォルトでは部分一致のため、完全一致にするには「’=A」「’=B」「’=C」と入力します。
AND条件の設定方法
AND条件の場合は、同じ行に条件を記入します。同一行に複数の条件を入れることで、すべての条件を満たす行だけが抽出されます。
- 例えば、次のように条件を設定します。
商品名 | 金額 |
---|---|
A | >=1000 |
この設定では、商品名に「A」を含み、かつ金額が1000以上のデータが抽出されます。
手順2: フィルターの詳細設定を使用する
- データ範囲を選択します。フィルタを適用するデータの範囲全体を選択してください(ヘッダー行を含む)。
- Excelのリボンから「データ」タブをクリックし、「詳細設定」を選択します。
- フィルタ条件の入力
- 「リスト範囲」に、フィルタ対象のデータ範囲が自動的に入力されます(手動で変更も可能)。
- 「検索条件範囲」に、先ほど作成した条件範囲を選択します。
- 「OK」をクリックすると、条件に一致したデータのみがフィルタリングされます。
使用例
例1: OR条件の詳細設定フィルタ
次の条件範囲では、商品名が「A」「B」「C」を含む行が抽出されます。
例2: AND条件の詳細設定フィルタ
次の条件範囲では、商品名に「A」を含み、金額が3以上の行が抽出されます。
フィルター詳細設定のメリット
- 柔軟な条件設定
OR条件やAND条件を自由に組み合わせて複雑なフィルタリングが可能です。 - 別シートで条件を指定
条件範囲を別のシートに置いてもフィルタリングができます。 - 複数列にまたがる条件
同時に複数列の条件を評価できるため、精密なデータ抽出が可能です。
まとめ
Excelで複数の条件をフィルタリングする際、ヘルパーカラムやFILTER
関数、フィルター詳細設定を活用すれば、簡単にOR条件やAND条件を実現できます。