小技集

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ



2023年6月19日【ID:0】

【Excel】FILTER関数で複数条件指定


スピル機能を活用した関数でFILTER関数があります。
FILTER関数の使い方は以下になります。

=FILTER(配列, 含む, [空の場合])
// 指定した配列から指定の条件を満たすデータのみを抽出する
// [空の場合]は条件を満たすデータが見つからない場合に表示する内容

・使用例

=FILTER(B3:E12,D3:D12="女","")

※日付(J列)の表示形式は日付になっていないため、シリアル値が表示されています。

この活用例を見ると、条件は1つまでしか設定できないように思えます。(使用例の場合は、「性別が女」という条件のみ)
実は、FILTER関数の仕組みを理解すると複数条件でも設定することができます。

FILTER関数の仕組みは、[配列]に指定した範囲の行数(列数)と同じ数のTRUEもしくはFALSEの配列を[含む]に指定します。
上記の場合は、以下のようになります。

この[含む]の中のTRUEの箇所のみを抽出したものが以下の結果になります。

また、TRUEは0以外の数値、FALSEは0としても表現することができるので、以下のようにしても抽出することができます。
※[含む]にF列の数字を渡しています。

実際に、TRUEとFALSEの値をINT関数を使って数値で表現すると、1と0と表示されます。

このことから、複数の条件をANDで結びたい場合は「掛け算(*)」、ORで結びたい場合は「足し算(+)」で表現できることが分かります。


AND条件の活用例は以下になります。

=FILTER(B3:E12,(D3:D12="男")*(E3:E12>=DATEVALUE("1995/1/1")),"")

※日付を比較するため、DATEVALUE関数で日付をシリアル値に変換して比較しています。

OR条件の活用例は以下になります。

=FILTER(B3:E12,(D3:D12="男")+(E3:E12>=DATEVALUE("1995/1/1")),"")

3つのAND条件の活用例は以下になります。

=FILTER(B3:E12,(D3:D12="男")*(E3:E12>=DATEVALUE("1995/1/1"))*(E3:E12<=DATEVALUE("1999/12/31")),"")
パソコンで開く場合は、リンクコピーがあるのでご活用ください。



メンバー募集 メンバー募集
1分で読める小技集 1分で読める小技集




リンクの共有はこちらから行えます。

  リンクコピー Twitter Facebook はてなブックマーク Pocket
トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ


- 人気の記事 -



- メンバー限定 [一覧] -



サイト累計閲覧数

1379374

有料動画講座
(買い切り)

Excel完全制覇


ちょっとした機能 便利ツール
【小技集】

【Excel】データベースとなる表を作成するときのポイント

【Excel】オートフィルのちょっとした小技

【Excel】文字列の数字を一括で数値にする

【Excel】長い数式を改行して見やすくする

【ExcelVBA】マークされた行を削除する

【Excel】特定のセルへ瞬時に移動

【Excel】グラフの軸の「データのない日付」を非表示にする

【Excel】横方向の並べ替え

【Excel】出社時刻と退社時刻から勤務時間を求める

【Excel】関数の使い方をすぐに確認する

【Excel】特定の曜日の日付を入力できないようにする

【Excel】特定の値の表示非表示を切り替える

【Excel】締め日を考慮したカレンダーの作成方法

【Excel】吹き出しの図形の三角の幅を自由に調整する方法

【Excel】複数の目標値を自動で計算「ソルバー」

【Excel】値がない行(列)を自動で色付け

【Excel】勤務日数を瞬時に求める

【Excel】VLOOKUP関数で時間を検索して抽出できない?

【Excel】テンプレートは便利

【Excel】タイムスケジュールを瞬時に作成

【Excel】数式のコピー時に書式をコピーしない

【ExcelVBA】ダブルクリックで塗りつぶしとリセットを繰り返す

【Excel】実は便利な拡張子(xltx)とは

【Excel】セルに分数を入力する

【Excel】締め日が20日の場合の「請求対象月」





一覧ページへ

トップ > 小技集 > 記事
小技集一覧へ
限定コンテンツ一覧へ