記事検索

検索ワードを入力してください。
Sky Tech Blog
【Excel】FILTER関数を​使って​表を​柔軟に​フィルタリングしよう!

【Excel】FILTER関数を​使って​表を​柔軟に​フィルタリングしよう!

Excelでオートフィルターを使って特定の条件に合ったデータを抽出する方法についての説明しています。クレジットカードでの支払いまたは3000円以上の支払いを抽出する方法を例に、FILTER関数を使って複雑な条件を設定する方法を紹介しています。

Excelで表を作ったあと、オートフィルターを使用し、欲しい情報だけ見えるようにすることはよくありますよね。
ですが、自分が欲しい条件の組み合わせが作れない…
そんな困り事はありませんか?

以下のような家計簿を用意しました。
この中で、「クレジットカードで支払ったもの」もしくは「支払方法は問わずに3000円以上のもの」の一覧を作ってみましょう。

こういった条件がある場合、まずはオートフィルターを使うと思います。
ですが、たとえば最初に「F列の支払い方法がクレジットカードである」という条件を作ってしまうと、以下のように現金や口座振替で3000円以上のものが表示されなくなってしまいます。

これを解決するために、FILTER関数を使ってみましょう!

FILTER関数の​使い方

この関数の構文の紹介です。

=FILTER(array, include, [if_empty])

array:

フィルタリングする範囲または配列を指定します。
例:A1:D20

include:

フィルタリングの条件を指定します。条件は論理値(TRUEまたはFALSE)を返す必要があります。
例:B1:B20="食費"

[if_empty]:

フィルタリングの結果が空の場合に返す値を指定します。
省略した場合、フィルタリングの結果が空のときにエラーが返されます。
例:"該当するデータがありません"

実際に​使ってみよう!

まずは表を作成したい場所に見出しを用意しておきましょう。
今回は、元の表と比較をするために右隣に見出しを作成しました。

FILTER関数を使う場合、表の左上にあたる場所に数式を入力します。
今回はI2セルに以下の数式を入力してください。

=FILTER(A2:G21,((F2:F21="クレジットカード") + (D2:D21 >= 3000)))

これで、以下のような表が完成しました!
※見た目を合わせるために罫線を追加しています。

この​数式は​何を​していたの?

FILTER関数の中身を分解して見てみましょう。
書く内容は「,」で区切られるため、2つの数式になります。
ちなみに、今回は[if_empty]を省略して作成しています。

array:

A2:G21
こちらは元々の表のうち、見出し以外を選択します。

include:

((F2:F21="クレジットカード") + (D2:D21 >= 3000))
ここでは ( ) に注目してください。よく見ると、(F2:F21="クレジットカード") と (D2:D21 >= 3000) の足し算になっています。 分解して見てみましょう。

(F2:F21="クレジットカード")

これは、「クレジットカードで支払ったもの」を抽出するための数式です。
支払方法はF列に記載されています。
そのため、見出しを除いた範囲であるF2からF21クレジットカードと同じものを探すため、このような式になります。

(D2:D21 >= 3000)

これは、「支払方法は問わずに3000円以上のもの」を抽出するための数式です。
金額はD列に記載されています。
そのため、こちらも見出しを除いたD2からD213000以上と同じものを探すため、このような式になります。

そして最後に足し算を行います。
この足し算はor演算を表しており、複数ある条件のうち、どちらか一方でも満たすものを探すために利用しています。
その結果、「クレジットカードで支払ったもの」もしくは「支払方法は問わずに3000円以上のもの」を表すことができます。

このようにFILTER関数を使うと、オートフィルターでは表現できない複雑な条件を作成することができます。
ぜひ試してみてください!


\シェアをお願いします!/
  • X
  • Facebook
  • LINE
キャリア採用募集中!

入社後にスキルアップを目指す若手の方も、ご自身の経験を幅広いフィールドで生かしたいベテランの方も、お一人おひとりの経験に応じたキャリア採用を行っています。

Sky株式会社のソフトウェア開発や製品、採用に関するお問い合わせについては、下記のリンクをご確認ください。
お問い合わせ
ホーム