データ範囲の中から条件に合致したデータを抽出したい場合、従来であればデータ範囲をテーブルに変換するか、「データ」タブにある「並べ替えとフィルター」から「フィルター」を選択して必要な条件を指定するといった操作が必要でしたが、FILTER関数はその手順を関数で手軽に抽出できるようになります。

ソリューション最終更新日: 20200810

エクセル FILTER関数で必要なデータを抽出する方法

  • このエントリーをはてなブックマークに追加

データ範囲の中から条件に合致したデータを抽出したい場合、従来であればデータ範囲をテーブルに変換するか、「データ」タブにある「並べ替えとフィルター」から「フィルター」を選択して必要な条件を指定するといった操作が必要でしたが、FILTER関数はその手順を関数で手軽に抽出できるようになります。
※この関数はOffice 365で使用可能です。Office2013・2019および以前のバージョンのOfficeでは表示されませんのでご注意ください。
書式(基本構文)
FILTER(配列,含む,[空の場合])
記述例

=FILTER(A2:F10,F2:F10>=10000,””)

1.データの抽出結果を表示させたいセルを選択

今回は下図のような表で税込価格が指定した数値以上のデータをFILTER関数を使用して抽出します。
データの抽出結果を表示させたいセルを選択(ここでは見出しとなっている日付の下のセル「B19」を選択)します。

2.[fx]ボタンをクリックして関数の挿入ダイアログボックスを表示

選択したセルに関数を挿入します。数式バー左にある「fx」ボタンをクリックして「関数の挿入」ダイアログボックスを表示します。

3.FILTERを検索して選択する

「関数の検索」窓内に「FILTER」と入力して[検索開始]をクリックします。「関数名」窓の検索結果にFILTERが表示されたら選択し、[OK]をクリックします。

4.抽出したいデータ範囲を選択する

FILTER関数の引数ダイアログボックスが表示されたらそれぞれの項目を埋めていきます。「配列」は言い換えるとデータの範囲となるので、ここでは「B4:G13」を選択します。

5.抽出条件を指定する

続いて「含む」を指定します。「含む」は言い換えると抽出条件となるので、データの抽出に必要な条件を記述します。ここでは税込価格が50000以上のものを抽出することとし、引数には「G4:G13>=50000」と入力します。

6.空の場合の対処法を記述する

指定した条件に合致したデータがない場合、「空の場合」を省略(空欄)していると、エラーが返されるため、「””」を入力して空白を表示させるようにすればいいでしょう。

[OK]をクリックすれば、FILTER関数で抽出した結果がスピルされて複数行列にわたって表示されます。
※スピル—表示しようとするデータが複数のセルにまたがる場合に、隣接するセルに値をこぼれ(=spill)させて表示される機能です。

下図では調整済みですが、結果を表示するセルの数値の書式が標準の場合、日付部分が「44187」のような表示(シリアル値)になりますので、数値の書式を日付形式に変更してください。
※シリアル値—Excelで日付を管理するための値で、Windows版では1900年1月1日を起点とする連番で保持しています。
例)44187=1900年1月1日から44187日目=2020年12月22日

データの変更や増減にも特別な対応は不要

FILTER関数でデータを抽出するメリットは、データ内容に変更があった場合や、データをあとから追加する必要があった場合でも、関数が自動的に処理してくれるため特別な対応が不要だという点です。
抽出元のデータに変更があった場合、関数を使用していれば下図のように、抽出結果に即座に反映されます。

また、データの追加が前提である場合は、抽出元となるデータ範囲を「テーブル」にしておくと便利です。
データ抽出元の範囲を選択し、[挿入]→[テーブル]をクリックしてテーブル化しておきます。

テーブル化したらテーブル名を確認しましょう。

FILTER関数を挿入したセルを編集し、配列の項目にテーブル名を入力しておけばあとからデータを追加しても自動的に対応してくれます。

ライタープロフィール パソコン工房NEXMAG [ネクスマグ] 編集部

パソコンでできるこんなことやあんなこと、便利な使い方など、様々なパソコン活用方法が「わかる!」「みつかる!」記事を書いています。

記事を
シェア