a4|Excel FILTER関数で複数条件抽出をマスター!AND/OR条件やエラー対処法

ExcelのFILTER関数は、複数条件でのデータ抽出に非常に役立ちます。この記事では、FILTER関数の基本的な使い方から、AND/OR条件の指定方法、エラー時の対処法までを詳しく解説します。さらに、UNIQUE関数との組み合わせや、実務での応用例もご紹介。この記事を読めば、Excelでのデータ分析がより効率的になるでしょう。

目次

FILTER関数の基本を理解する

Excel filter関数の対応バージョン

  • Excel for Microsoft 365
  • Excel 2024
  • Excel 2021
  • Excel 2019

FILTER関数の構文と引数

FILTER関数は、指定された条件に基づいて、配列からデータを抽出する関数です。

基本構文は
=FILTER(配列,含む,[空の場合])
です。

配列には抽出対象のデータ範囲、含むには抽出条件、空の場合には条件に合致するデータがない場合の表示を指定します。

基本的なデータ抽出の例

例えば、特定の部門に所属する社員のデータを抽出する場合、FILTER関数に部門名と社員データが記載された配列を指定することで、該当するデータだけを抽出できます。これにより、膨大なデータの中から必要な情報だけを簡単に取り出すことが可能です。

抽出条件を指定する方法

抽出条件には、数値や文字列だけでなく、論理演算子を使った複雑な条件も指定できます。これにより、より詳細なデータ抽出が可能になります。具体的な条件の記述方法については後述します。

複数条件でのデータ抽出:AND条件

AND条件の記述方法

FILTER関数でAND条件を指定するには、複数の条件を「」で繋ぎます。

例えば、営業部かつ20代の社員を抽出する場合は、「(部門=”営業部”)(年齢>=20)*(年齢<30)」のように記述します。

これにより、すべての条件を満たすデータだけが抽出されます。

具体的なAND条件の例

例として、製品名が「A」かつ販売価格が「1000円以上」のデータを抽出するケースを考えてみましょう。

この場合、「(製品名=’A’)*(販売価格>=1000)」と条件を指定することで、該当するデータのみを抽出できます。

この方法は、複雑な条件を組み合わせる際に非常に便利です。

AND条件抽出の注意点

AND条件を使用する際には、条件式がすべて満たされているか確認する必要があります。もし条件が一つでも満たされない場合、結果は表示されません。条件の記述ミスに注意しましょう。

【具体例】サンプルデータ|解説とExcelデータダウンロード

まずは、以下のようなサンプルデータを用意します。

商品名販売価格カテゴリ
商品A1500食品
商品B800食品
商品C2000家電
商品D1200食品
商品E3000家電

【具体例】AND条件の使い方 その1|解説とExcelデータダウンロード

「食品」カテゴリかつ、販売価格が1000円以上の商品を抽出してみましょう。 FILTER関数では、以下のようにAND条件を記述します。

=FILTER(A2:C6, (C2:C6="食品") * (B2:B6>=1000) )

商品名販売価格カテゴリ
商品A1500食品
商品D1200食品

(C2:C6="食品") * (B2:B6>=1000)」の部分がAND条件です。各条件を()で囲み、*で繋ぐことでANDを表現しています。

以下からExcelのサンプルデータをダウンロードし、練習用としてお使いください。

【具体例】AND条件の使い方 その2|解説とExcelデータダウンロード

今度は、「家電」カテゴリかつ、販売価格が2000円より高い商品を抽出します。 FILTER関数は以下のようになります。

=FILTER(A2:C6, (C2:C6="家電") * (B2:B6>2000) )

商品名販売価格カテゴリ
商品E3000家電

(C2:C6="家電") * (B2:B6>2000)」がAND条件の部分です。カテゴリと価格の両方の条件を満たすデータのみが抽出されました。

以下からExcelのサンプルデータをダウンロードし、練習用としてお使いください。

まとめ

FILTER関数でAND条件を使う際は、「(条件1)*(条件2)」のように、各条件を()で囲み*で繋げます。これにより、全ての条件を満たすデータを抽出できます。OR条件やNOT条件と組み合わせることで、さらに柔軟な抽出が可能です。ぜひ色々な条件を試してみてください。

複数条件でのデータ抽出:OR条件

OR条件の記述方法

OR条件を指定する場合は、複数の条件を「+」で繋ぎます。

例えば、営業部または人事部の社員を抽出する場合は、「(部門=”営業部”)+(部門=”人事部”)」のように記述します。

これにより、いずれかの条件を満たすデータが抽出されます。

具体的なOR条件の例

例として、製品名が「A」または「B」のデータを抽出するケースを考えます。

この場合、「(製品名=’A’)+(製品名=’B’)」と条件を指定することで、製品名が「A」または「B」のデータが抽出できます。

OR条件は、複数の選択肢からデータを抽出したい場合に役立ちます。

OR条件抽出時の注意点

OR条件を使う場合は、複数の条件のいずれかを満たしていればデータが表示されます。不要なデータまで表示されないよう、条件設定は慎重に行いましょう。

【具体例】サンプルデータ|解説とExcelデータダウンロード

以下のサンプルデータを使用します。

商品名販売価格カテゴリ
商品A1500食品
商品B800食品
商品C2000家電
商品D1200食品
商品E3000家電

【具体例】OR条件の使い方 その1|解説とExcelデータダウンロード

「食品」または「家電」カテゴリの商品を抽出してみましょう。FILTER関数では、以下のようにOR条件を記述します。

=FILTER(A2:C6, (C2:C6="食品") + (C2:C6="家電") )

行/列商品名販売価格カテゴリ
2商品A1500食品
3商品B800食品
4商品C2000家電
5商品D1200食品
6商品E3000家電

(C2:C6="食品") + (C2:C6="家電")」の部分がOR条件です。各条件を()で囲み、+で繋ぐことでORを表現しています。

以下からExcelのサンプルデータをダウンロードし、練習用としてお使いください。

【具体例】OR条件の使い方 その2|解説とExcelデータダウンロード

販売価格が1000円未満または2500円より高い商品を抽出します。FILTER関数は以下のようになります。

=FILTER(A2:C6, (B2:B6 < 1000) + (B2:B6 > 2500) )

行/列商品名販売価格カテゴリ
3商品B800食品
6商品E3000家電

(B2:B6 < 1000) + (B2:B6 > 2500)」がOR条件の部分です。価格が条件のいずれかを満たす商品が抽出されました。

以下からExcelのサンプルデータをダウンロードし、練習用としてお使いください。

まとめ

FILTER関数でOR条件を使う際は、「(条件1)+(条件2)」のように、各条件を()で囲み+で繋げます。これにより、いずれかの条件を満たすデータを抽出できます。AND条件と組み合わせることで、より細かな条件設定が可能です。OR条件を使いこなして、データ抽出の幅を広げましょう。

【応用】FILTER関数とUNIQUE関数の組み合わせ

UNIQUE関数とは

UNIQUE関数は、指定した範囲内の重複する値を削除し、一意の値のみを抽出する関数です。この関数をFILTER関数と組み合わせることで、抽出したデータから重複を取り除き、より整理されたデータを得ることができます。

組み合わせ例:重複のない抽出

例えば、ある製品を購入した顧客リストから、重複を排除した顧客一覧を作成したい場合、FILTER関数で特定の条件を満たす顧客データを抽出し、その結果をUNIQUE関数にかけることで、重複のないリストを作成できます。

組み合わせのメリット

この組み合わせにより、データの整理・分析がより簡単になります。重複のないデータは、正確な集計やグラフ作成に不可欠です。FILTER関数とUNIQUE関数を使いこなすことで、データ分析の効率が大幅に向上します。

【具体例】サンプルデータ

以下のような顧客購入データがあるとします:

行/列A列B列C列
1顧客名購入日購入金額
2山田太郎2024/1/53000
3鈴木花子2024/1/105000
4山田太郎2024/1/152000
5佐藤次郎2024/1/204000
6鈴木花子2024/1/256000
7山田太郎2024/1/303500
8佐藤次郎2024/2/14500

【具体例】FILTER関数のみの例

購入金額が4000円以上のデータを抽出する場合:

=FILTER(A2:A8,C2:C8>=4000)

結果:

行/列D列
2鈴木花子
3佐藤次郎
4鈴木花子
5佐藤次郎

【具体例】FILTER関数とUNIQUE関数の組み合わせ

購入金額4000円以上の顧客から重複を除いた一覧を作成:

=UNIQUE(FILTER(A2:A8,C2:C8>=4000))

結果:

行/列E列
2鈴木花子
3佐藤次郎

関数の解説

  1. FILTER関数部分(C2:C8>=4000)
  • 購入金額列(C列)から4000円以上の行を抽出条件として指定
  • 抽出対象は顧客名列(A列)
  1. UNIQUE関数部分
  • FILTER関数で抽出された結果から重複する顧客名を除外
  • 昇順で自動的にソートされる
  1. 組み合わせのメリット
  • 条件抽出と重複除去が1つの数式で完結
  • データ更新時に自動で結果が更新される
  • エラー処理が自動で行われる

注意点

  • UNIQUE関数は、Microsoft 365またはExcel 2021以降で使用可能
  • 空白セルも一意の値として扱われる
  • 大文字小文字は区別されない

まとめ

FILTER関数を使いこなそう

FILTER関数はExcelでのデータ抽出に非常に便利な関数です。複数条件を組み合わせることで、より詳細なデータ抽出が可能になります。この記事で紹介したテクニックを駆使して、業務効率を大幅に向上させましょう。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

目次