【Excel・エクセル】FILTER関数の使い方!条件に合うデータを抽出

テーブル,抽出

もりの

元の表は変えないで、必要なデータだけフィルターみたいに見たいんだ。

やまの

FILTER関数を使えばいいんよ。

今回のポイント
  • 条件に合うデータを抽出するにはFILTER関数
  • =FILTER(配列,含む,[空の場合])
  • Excel365、Excel2021のみ対応
  • 条件は「~または(or)~」「~かつ(and)~」もできる

スポンサーリンク

 FILTER関数の練習ファイルダウンロード

もりの
 
 

一緒にやってみませんか?

【Excel・エクセル】条件に合うデータを抽出できるFILTER関数

フィルタ―のイメージ

条件に合うデータの一覧を見たいとき、フィルター機能を使いますよね。

ただ、元の表を変形させたくない、別の場所に表示したい、横に並んだ表まで非表示になるのは嫌……なんて時ありませんか?

そんな時使えるのが、FILTER関数です。

フィルター関数の例
フィルター関数の例
やまのの困った顔
やまの

ただ、Excel365かExcel2021じゃないと使えんのよ。

ちなみに読み方は、「フィルター関数」です。

さっそく、使い方を見てみましょう。

【Excel・エクセル】FILTER関数の使い方

FILTER関数の書き方

=FILTER(配列,含む,[空の場合])

配列この範囲の
含むこの条件に合うデータだけ抽出して
空の場合データがなかったらこうして(省略可)

FILTER関数の使用例

では次の表から分類が家具のデータを、FILTER関数を使って抽出したいと思います。

FILTER関数の練習問題
FILTER関数の練習問題
やまの

=FILTER(A2:D7,B2:B7="家具")で、求められるよ。説明するね。

ステップ1

まず、「=FILTER(」と入力してください。

「=FILTER(」まで入力した画像
まずは関数名を書くよ

ステップ2

次に配列、フィルターしたい範囲ですね。

今回はA1~D7の表からデータを抽出したいんですが、1列目の見出し行はいらないので、セルA2からD7までをドラッグして、「,」です。

FILTER関数の配列を指定した画像
フィルターしたい範囲を選ぶよ

ステップ3

次に含む、条件のことですね。

今回はB列の分類が家具だったら、としたいので、分類が書かれたB2~B7をドラッグします。

条件の範囲を指定した画像
まずは条件の範囲を指定する

ステップ4

で、先ほどの範囲のが家具だったらとしたいので、「="家具"」と入力します。

FILTER関数の含むを指定した画像
条件には比較演算子が使えるよ

もちろんセルで指定もできますよ。

文字列で指定する場合、「"」をお忘れなく!

条件をセルで指定した画像
セルでも指定できるよ

完成!

これで式は完成です。

エンターキーを押せば、分類が家具のデータを抽出できました!

FILTER関数で条件に合うデータを抽出できた画像
FILTER関数でフィルターっぽいことができた

FILTER関数の空の場合って?

先ほどの例では、空の場合を省略しました。

この場合、条件に合うデータがないと「#CALC!」というエラーが表示されます。

#CALC!エラー表示
そんなもん、ありませんて!

ステップ1

それが嫌だなってときは「,」に続けてエラー時に表示したい文字列などを入力してください。

FILTER関数の空の場合を指定した画像
データがないなら「ないよ」って表示したい

完成!

エラー表示が、指定した文字列に変りました。

空の場合が表示された画像
IFERROR関数使わなくてもいいね

【Excel・エクセル】FILTER関数で複数条件を指定する

もりの

条件って「~または(or)」とか、「~かつ(and)」って指定もできる?

やまの

もちろん、カバーしてるよ。

FILTER関数でor条件を指定する

複数条件でどちらか一つでも当てはまればという、or条件にするには、条件を「()」で閉じて「+」でつなげればOKです。

例えばさっきの表で、「分類が菓子または人気が3以上」という条件にしたい場合。

ステップ1

含むの部分を、条件1「(B2:B7="菓子")」と条件2「(D2:D7>=3)」を+でつなげて「(B2:B7="菓子")+(D2:D7>=3)」と書きます。

FILTER関数でOR条件を指定した画像
ORは「+」

完成!

無事、分類が菓子または人気が3以上のデータを抽出できました!

FILTER関数のOR条件でデータを抽出した画像
ORは「+」、大事なので2回言いました

FILTER関数でand条件を指定する

複数条件でどちらもすべて当てはまっていればという、and条件にするには、条件を「()」で閉じて「*」でつなげればOKです。

例えばさっきの表で、「分類が菓子かつ人気が3以上」という条件にしたい場合。

ステップ1

含むの部分を、条件1「(B2:B7="菓子")」と条件2「(D2:D7>=3)」を*でつなげて「(B2:B7="菓子")*(D2:D7>=3)」と書きます。

FILTER関数でAND条件を指定した画像
andは「*」

完成!

無事、分類が菓子でかつ人気が3以上のデータを抽出できました!

FILTER関数のAND条件でデータを抽出した画像
ORは「*」、大事なので2回言いました

【Excel・エクセル】FILTER関数が使えない

FILTER関数が使えない場合、エクセルのバージョンが対応していない可能性があります。

FILTER関数はExcel365、Excel2021でのみ使える関数です。

また、元の表に追加したデータが反映されない場合、FILTER関数の配列を変更していない可能性があります。

頻繁にデータを追加するなら、元の表をテーブルにしてテーブルを指定するといいですよ。

FILTER関数の配列をテーブルにした画像
テーブルならデータを追加しても安心

これで、必要なデータをすぐに 抽出できますね!
それでは、お疲れさまでした!

今回のおさらい
  • 条件に合うデータを抽出するにはFILTER関数
  • =FILTER(配列,含む,[空の場合])
  • Excel365、Excel2021のみ対応
  • 条件は「~または(or)~」「~かつ(and)~」もできる