Excel 関数 PR

FILTER関数で複数条件を指定!OR・ANDを使おう

記事の内容に広告・プロモーションを含みます。

ExcelのFILTER関数で複数の条件を指定するなら「AND」「OR」を使いましょう!この記事ではFILTER関数で複数条件を指定する方法をご紹介します。

複数条件といっても、AND「*」やOR「+」で条件を指定するだけなので簡単です!

まずは基本構文から振り返ってみましょう。

FILTER関数とは?基本構文から使用例をご紹介

FILTER関数とは、特定の条件に合うデータを抽出できる関数です。めっちゃ簡単に説明すると、クラスの名前と性別が入力されているデータから、男子の名前だけを一瞬で抽出することができます!

FILTER関数の基本構文

=FILTER(配列, 含む, [空白の場合])

配列…データが入力されている範囲を選択

含む…データの仕分け方を指定(条件指定)

空白の場合…データが存在しない場合に返すテキストを指定

空白の場合は、省略しても大丈夫です!

FILTER関数の使用例

こちらでは、FILTER関数をもっと理解できるように図を使って解説します!使用例では、名前と性別が入力されたデータがあり、男性の名前だけを抽出していきたいと思います。

数式を使って説明すると「=FILTER(名前が入力されている範囲, 性別が入力されている=”男性”)」になります。今回は[空白の場合]は省略します。それでは実際にFILTER関数の数式を見ていきましょう!

性別が男性の名前を抽出しよう!

=FILTER(B3:B7,C3:C7="男性")
※コピペして使ってみてね!

B列に名前、C列に性別があり、性別が男性の名前を抽出する式となります。女性の場合は「=FILTER(B3:B7,C3:C7=”女性”)」になります。一度ご自身のExcelで試してみてください。

FILTER関数の基本的な使い方を理解してきたので、次は複数条件を指定する方法をご紹介します!




FILTER関数で複数の条件を指定する方法

FILTER関数で条件を2つ3つと指定したい場合どうしたらいいのでしょうか?悲しいことに実務では、条件が2つ以上になることが多くあります( ;∀;)

そんな場面に皆さんが直面しても「あ~これはこう!(‘ω’)」で進められるように、FILTER関数で複数の条件を指定する方法を紹介します!

と。そのまえに…複数条件といっても「〇かつ✖」と「〇または✖」があります。前者は両方の条件を満たすデータであり、後者はどちらか一方または両方の条件を満たすデータになります。「かつ(AND)、または(OR)」を使い分けて業務効率をUPしていきましょう!

ANDとORそれぞれの具体例も一緒に紹介するので見てね!

ANDで複数条件を指定

ANDは「〇かつ✖」の条件、要はすべての条件が当てはまるデータのことを指します。FILTER関数でANDを使う方法は、それぞれの条件を()で囲って、「*」で繋げます。

FILTER関数とANDの数式

=FILTER(配列, (条件①) * (条件②), [空白の場合])
※3つの条件なら「=FILTER(配列,(条件①)*(条件②)*(条件③),[空白の場合])」です。

たとえば、クラス・国語の平均点・英語の平均点が入力されているデータがあり、「国語が平均70点以上かつ英語が平均60点以上のクラス」のクラスを抽出する場合の数式は「 =FILTER(クラスの範囲,(国語の範囲>=70)*(英語の範囲>=60)) 」になります。

「>=」て何??となった方向け

「=」や「>」などはExcelで使用できる比較演算子になります。この演算子を使用し数式で「等しい・等しくない・より大きい・より小さい・以上以下」などを指定することができます。一覧を表にしておくので、コピペやスクショなどしててください( ..)φメモメモ

算子 意味 使用例 説明
= 等しい A1=B1 A1とB1は等しい場合~
<> 等しくない A1<>B1 A1とB1が等しくない場合~
> より大きい A1>B1 A1がB1より大きい場合~
< より小さい A1<B1 A1がB1より小さい場合~
>= 以上 A1>=B1 A1がB1以上の場合~
<= 以下 A1<=B1 A1がB1以下の場合~
Excelは知識が増えれば増えるほど業務効率をUPできるので、一歩ずつ学んでいきましょう!

ANDを使用した具体例

ANDを使用する基本的な数式を理解できたので、具体例を使って関数を挿入していきましょう。具体例では、クラス・国語と英語の平均点数が入力されているデータから、「国語が70点以上かつ英語が60点以上」のクラスを抽出します。

AND(*)を使って複数の条件を指定する方法

=FILTER(B3:B7,(C3:C7>=70)*(D3:D7>=60))
※コピペして使ってみてね!

今回の条件は、国語の平均点と英語の平均点だけですが、数学の平均点もデータにあり、条件を追加したい場合は、「=FILTER(クラス,(国語>=70)*(英語>=60)*(数学>=条件にする数値))」で指定することが出来るので、試してみてください

ORで複数条件を指定

FILTER関数で「〇または✖」の条件を抽出するなら「OR」を使用します。ORの指定方法は、条件を()で囲い、「+」で繋げてあげます。ANDと似ているので、覚えやすいですよね(*´ω`)

FILTER関数とORの数式

=FILTER(配列, (条件①) + (条件②), [空白の場合])
※3つの条件なら「=FILTER(配列,(条件①)+(条件②)+(条件③),[空白の場合])」です。

ORを使用した具体例

さっそくOR(または)で複数の条件をしてしていきましょう!こちらでもクラスごとに国語と英語の平均点が入力されているデータを使用します。今回の条件は、「国語が70点以上または英語が60点以上」のクラスを抽出してみましょう!

OR(+)を使って複数の条件を指定しよう!

=FILTER(B3:B7,(C3:C7>=70)+(D3:D7>=60))
※コピペして使ってみてね!

なぜ?FILTER関数でエラーになる原因

Excelのバージョンを確認しよう

FILTER関数が使えるExcelのバージョンは、Microsoft365・Excel2021以降で使用できる関数です。※記事作成時点

この記事を読んでいる方は大丈夫かと思いますが、対象のバージョンを使用していない方はFILTER関数を使用することが出来ないので注意しましょう!

数式(範囲と条件)を確認しよう

エラーの原因の一つとして、条件式の演算子や括弧が間違えている場合があります。たとえば、「=FILTER(配列, ((条件①) + (条件②))」や、「=FILTER(配列, (条件①,90) + (条件②))」などがあります。

それぞれどこが間違えているか分かりますか?少しだけ考えてみて答え合わせをしてみてください( ;∀;)

「 =FILTER(配列, ((条件①) + (条件②)) 」の答えコチラ

=FILTER(配列, ((条件①) + (条件②))の括弧が一つ多いです。正しくは、=FILTER(配列, (条件①) + (条件②))になります。

「 =FILTER(配列, (条件①,90) + (条件②)) 」の答えコチラ

=FILTER(配列, (条件①,90) + (条件②))の「,」は不要で、演算子を入力するなら(条件①=90)や (条件①>=90)で入力します。

まとめ

今回は、FILTER関数の基本構文から複数条件でデータを抽出する方法を紹介しました。簡単に振り返ってみましょう!

基本構文は「=FILTER(配列, 含む, [空白の場合])」でしたね。この構文に「〇かつ✖」で複数の条件を追加するなら「AND(*)」を使用し、「〇または✖」で条件を指定する場合は「OR(*)」を使用しましたね。

それぞれ用途は異なりますが、数式の入力方法は簡単なので、ぜひ皆さんも試してみてください!

デスクワーク周りの便利グッズ



(番外編)同僚へのオモシロ贈り物として

スポンサーリンク