Googleスプレッドシート:FILTER関数で条件にあったデータのみを表示させる。

Googleスプレッドシート FILTER関数00
LINEで送る
Pocket

 

こんにちは。ひとりで.comです。

今日は、Excel(エクセル)にはない、Googleスプレッドシートの独自関数であるFILTER関数について紹介していきたいと思います。

 

条件を満たすデータを表示させるGoogleスプレッドシートのFILTER関数

 

FILTER関数とは?

Googleの公式ドキュメントには以下のようにFILTER関数は説明されています。

FILTER関数

ソース範囲をフィルタ処理して、指定した条件を満たす行または列のみを返します。

 

FILTER関数は以下のような構文で利用します。

FILTER(範囲, 条件1, [条件2, …])

  • 範囲 – フィルタ処理するデータを指定します。
  • 条件1 – 範囲の 1 列目または 1 行目に対応する TRUE 値または FALSE 値を含む列か行、あるいは TRUE または FALSE と評価される配列数式を指定します。
  • 条件2 … – [省略可] – 範囲内の対応する行または列が FILTER を通過するかどうかを示す TRUE または FALSE のブール値を含むその他の行または列を指定します。これらの行や列と評価される配列数式を含むこともできます。条件のすべてで同じ種類(行または列)を対象にする必要があります。行の条件と列の条件を混合することはできません。

※条件の引数には、範囲と同じ長さを指定する必要があります。

 

 

 

FILTER関数の使い方を紹介

 

実際にどのようにFILTER関数を使えばよいのかについて、実例を見ながら覚えていきましょう。

 

まずは以下のような、人事データを例にして考えてみましょう。以下のデータはある企業の人事データベース(仮)とします。この中には、名前や性別、出身地などが記載されていますが、この中から性別が男のデータだけを別のシートや別のセルに抽出したい場合、FILTER関数がとても便利に利用できます。

単に特定のデータのみを表示させたいのであれば、フィルタ機能を用いれば問題ありません。
※フィルタ機能については、以下の記事をご確認ください。

 

 

Googleスプレッドシート FILTER関数01
Googleスプレッドシート FILTER関数01

 

 

 

 

特定のデータのみを別のセルや別のシートに表示させたい場合、FILTER関数を使った表示させることができます。今回の場合、

=FILTER(A1:L101,D1:D101=“男”)

というように関数を挿入します。

オレンジ色の部分で、元となるデータの範囲を指定し、紫色の部分で、条件となる範囲を指定し、緑色の部分で具体的な条件を入れることで、数式を完成させることができます。

Googleスプレッドシート FILTER関数02
Googleスプレッドシート FILTER関数02

 

 

 

前述の数式を入れることで以下のように、性別が”男”のデータだけを抽出することができました。

Googleスプレッドシート FILTER関数03
Googleスプレッドシート FILTER関数03

 

 

 

スポンサードリンク

 

FILTER関数を用いる際に、気をつけなければならない部分があります。それは、”見出しの部分は抽出できない”という点です。以下のように、もともとのデータについていた見出しの部分については、FILTER関数にて抽出されませんので、関数とは別途、マニュアルでつけてあげる必要があります。

Googleスプレッドシート FILTER関数04
Googleスプレッドシート FILTER関数04

 

 

 

FILTER関数の良いところは、しっかりデータの範囲を指定しておけば、データがどんどん増えていこうとも、自動でデータの抽出が可能な点です。

フィルタ機能の場合、ある一時点でのデータのみ抽出して、取り出すことはできますが、自動で更新させることは難しいため、常に変動するデータをとある条件に従って、表示し続けたい場合などは、このFILTER関数を使うと大変便利です。