抽出結果を別の箇所に表示!FILTER関数

練習用データ(13.3KB)
Excel 2021 Microsoft 365
Microsoft 365は、バージョン2408で動作確認しています。
解説記事内の画像はExcel for Microsoft 365のものです。

スポンサーリンク

データベース機能のフィルター

フィルターは、抽出条件に合ったデータだけを表示し、該当しないデータは非表示にする機能。
でも、表そのものに処理が行われるため、抽出条件に該当せず非表示になったデータは、抽出条件をクリアするまで確認することができません。
また、そもそもフィルター機能を有効にしたときに見出しにつく[▼]がイヤという方もいらっしゃるようです。
(でも実は、テーブルなら[▼]は超簡単に非表示にできます。)

FILTER関数

そこで、元の表はそのまま、別の箇所に抽出結果を表示させるのがFILTER関数
スピルを利用した関数となるので、Excel 2021またはMicrosoft 365で使える関数です。
また、元の表がテーブルになっていると格段に操作がしやすくなるので超おすすめですが、テーブルになっていなくともできます。
ただし、結果として表示させる部分はテーブルにはできません。

目次

スポンサーリンク

FILTER関数の設定

抽出結果を表示させたい先頭のセルを選択

抽出結果を表示させたい先頭のセルを選択し、[関数の挿入]ボタンをクリックします。
結果はデータのみが表示されるので、結果を表示させる箇所の見出し(この図ではF1からH1番地のグレーのセル)は自分で入力しておきます。

抽出結果を表示させたい先頭のセルを選択

[関数の分類]で「すべて表示」を選択。
関数名の一覧から「FILTER」を選択し[OK]ボタンをクリックします。

引数[配列]

引数[配列]

引数[配列]には、抽出結果として表示させたいデータがある範囲をすべて指定します。

表全体を範囲選択

例えば、抽出結果として表すべての項目を表示させたいなら、表全体を範囲選択。
この時、見出しは範囲選択に含めません

[氏名]欄のみのデータ全体を範囲選択

抽出結果として氏名だけを表示させたいなら、[氏名]欄のみのデータ全体を範囲選択します。
もちろん、見出しは範囲選択に含めません
下記で範囲選択の実例を見ていきましょう!

表がテーブルになっている場合

テーブル全体を範囲選択

選択したい表がテーブルになっている場合は、簡単に広範囲を選択できるテーブル専用の範囲選択の技があるので、テーブル全体も一瞬で範囲選択できます。
選択範囲に見出しは含めません。)
選択すると、引数[配列]にはテーブル名が表示されます。

テーブルの列を範囲選択

テーブル内の一部の列だけを結果として表示させたいなら、やはりテーブル専用の範囲選択の技を使って簡単に範囲選択できます。
普通の列の選択ではないので注意です。
選択範囲に見出しは含めません。)

表が普通のセル範囲(テーブルになっていない)の場合

表全体を範囲選択

表が普通のセル範囲(テーブルになっていない)の場合は、普段と同じように範囲選択します。(選択範囲に見出しは含めません。)
引数[配列]には選択したセル範囲が表示されます。

スポンサーリンク

引数[含む]

引数[含む]

引数[含む]には抽出条件を設定します。
下記で設定の実例を見ていきましょう!

表がテーブルになっている場合

テーブルの列を選択

例えば、「年齢が30以下」という抽出条件なら、年齢が入力されているテーブルの列を選択。
(もちろん、この時も選択範囲に見出しは含めません。)
テーブル専用の範囲選択の技を使えば、この選択も一瞬です。

「年齢が30以下」という抽出条件

そして、その後ろに続けて<=30と入力すれば、「年齢が30以下」という設定になります。

テーブルの列を選択

「プラン名がライト」という抽出条件なら、プラン名が入力されているテーブルの列を選択。
(もちろん、この時も選択範囲に見出しは含めません。)
テーブル専用の範囲選択の技を使えば、この選択も一瞬です。

「プラン名がライト」という抽出条件

そして、その後ろに続けて="ライト"と入力します。
「ライトという文字と同じ」という抽出条件を設定したわけです。
ダブルクォーテーションは、数式内に文字を指定するときには、文字の前後を半角ダブルクォーテーションで囲むというExcelのお作法です。

表が普通のセル範囲(テーブルになっていない)の場合

年齢のデータ範囲を選択

表が普通のセル範囲(テーブルになっていない)の場合は、普段と同じように範囲選択します。
例えば、「年齢が30以下」という抽出条件なら、年齢が入力されているデータ範囲を選択。
(もちろん、この時も選択範囲に見出しは含めません。)

「年齢が30以下」という抽出条件

そして、その後ろに続けて<=30と入力します。

引数[空の場合]

引数[空の場合]

引数[空の場合]には、抽出条件に該当するものがなかった場合に表示させたいものを指定します。
この欄は省略可能なので、

引数[空の場合]を省略かつ抽出条件に該当するものがなかった場合のエラーメッセージ

この、引数[空の場合]を省略した場合で、指定した抽出条件に該当するものがなかった場合には、エラーメッセージが表示されます。

引数[空の場合]を指定

省略せずに指定する場合は、"該当なし"のように、表示させたい文字を指定します。
ダブルクォーテーションは、数式内に文字を指定するときには、文字の前後を半角ダブルクォーテーションで囲むというExcelのお作法です。

引数の設定が終わったら[OK]ボタンをクリックすると、

FILTER関数の設定完了

抽出条件に該当するデータを、別の表として表示させることができました!
FILTER関数自体は1つのセルにしか設定していないのに、そこからあふれ出るように該当するデータがすべて表示されています!
これがスピルです!
今回は全データの表と、抽出結果の表を同じシートに表示させましたが、もちろん、別のシートに表示させることもできますし、データがあるファイル、結果を表示させるファイルの双方が開いていれば、別のファイルになっていても抽出可能です!

スポンサーリンク

かつて、こんな後悔のご経験はありませんか?
もっと早くからパソコンを触っておけば...
今まさしく、あの時とは比べものにならない大きな進化が、今まで経験したことのない驚異的なスピードで私たちを巻き込んでいます。
そうです、AIです。
あの時の何倍も何十倍も大きな後悔をしないために、本当に必要な情報とテクニックが手に入る場所、それがBe Cool UsersのAI特化メンバーシップです!

Be Cool Users管理人の略歴・得意なことをまとめました!
お仕事のご依頼も「自己紹介・お仕事のご依頼につきまして」からご連絡くださいませ。
「こんなことできる?」もお気軽にご相談ください。

目次へ
ページ先頭へ