IF関数とANDとOR関数の組み合わせ

スプレッドシートやエクセルを使う上で、欠かすことのできない関数「IF関数」

エラーチェックや、条件によって結果を変えるなど、様々な用途で使うことができ、多くの関数と組み合わせて使うことも多いです。

ここでは、IF関数の基本的な使い方と、複数の条件を指定するAND関数、OR関数を使った組み合わせの例を解説していきます。

にほんブログ村 IT技術ブログへ

IF関数の使い方

早速ですが、IF関数の構文は下記の通り。

=IF(論理式,[値が真の場合],[値が偽の場合])

「論理式」の部分が条件となる式を記述する部分です。そして・・・

「値が真の場合」 → 論理式の結果が「真」となった場合(条件が満たされた場合)

「値が偽の場合」 → 論理式の結果が「偽」となった場合(条件が満たされなかった場合)

このような構文になっていますが、実例を元にした方が理解しやすいと思うので、例を挙げながら解説していきます。

例えばこのようなデータがあるとします。

上図の右側にある例1~3には以下のような式が入っています。

例1の式  =IF(C2>150,”OK”,””)

例2の式  =IF(AND(C2>=150,D3>=5000),”Yes”,”No”)

例3の式  =IF(OR(C2>=200,D3>=10000),””,”Bad”)

それでは一つずつ説明していきますね。

例1)IF関数の基本

例1の式は下記のように記述しています。

=IF(C2>150,”OK”,””)

「論理式」の部分が、「C列の値(値段)が\150より大きいか?」

「真」ならば ”OK” という文字を出す。

「偽」ならば「何も表示しない」

という記述になります。

この式でつかっている ”“ は比較演算子と言います。

比較演算子には下記のようなものがあります。

比較演算子意味
=等号等しいとき
大なり記号より大きい
>=より大きいか等しい記号以上
小なり記号より小さい
<=より小さいか等しい記号以下
<>不等号等しくない
演算子表

この例では ” > “ を使っているので、「~より大きい」となります。

> と >= は似ていますが、指定した値を含むか含まないかの違いがあるので注意してください。

ということで、下図の通り、例1の関数の結果は・・・

C列の値段が150円より大きい、2,4,8行目で「OK」が表示されるようになります。

例2)IF関数とAND関数の組み合わせ

例2の式は下記のように記述しています。

=IF(AND(C2>=150,D3>=5000),”Yes”,”No”)

このように、複数の条件を全てを満たしたい場合は、IF関数の「論理式」の部分にAND関数を入れることができます。

AND関数は、指定した複数の論理式を全て満たしたとき「真」を返す関数です。

構文は次のようになります。

=AND(論理式1,論理式2,論理式3・・・)

AND関数では、論理式を複数設定できます。(最大255個)

この例では、以下のような意味を持つ2つの論理式を入れています。

「値段が\150以上」 かつ 「在庫が5000以上」 

全ての条件を満たしたとき(真となったとき)”Yes”と表示し、

満たしていないとき(偽となったとき)”No”と表示する。

というIF文になっています。

なので、計算結果としては、例2の列にあるように、2つの条件を満たしている2,3,4,6,8行目の結果が「真」となるため、「Yes」と表示され、それ以外は「No」と表示されています。

例3)IF関数とOR関数の組み合わせ

例3の式は下記のように記述しています。

=IF(OR(C2>=200,D3>=10000),””,”Bad”)

複数の条件のいずれかを満たしたい場合は、IF関数の「論理式」の部分にOR関数を入れています。

OR関数は、指定した複数の論理式のいずれかを満たしたとき「真」を返す関数です。

構文は次のようになります。

=OR(論理式1,論理式2,論理式3・・・)

論理式はAND関数同様、複数設定できます。(最大255個)

この例では、以下のような意味を持つ2つの論理式を入れています。

「値段が\200以上」 または 「在庫が10000以上」 

いずれかの条件を満たしたとき(真となったとき)”Yes”と表示し、

いずれの条件も満たしていないとき(偽となったとき)”No”と表示します。

というIF文になっています。

なので、計算結果としては、例3の列にあるように、2つの条件のいずれかを満たしている2,6,8行目の結果が「真」となるため、何も表示せず、それ以外は「Bad」と表示されています。

まとめ

この記事ではIF関数を紹介しました。

最も基本的な関数で、さらにIF関数の中に他の関数(ここではANDとOR)を入れる方法の、一番シンプルな例として紹介しています。

まずは、IF関数の使い方に慣れ、「真」となるときとはどういう意味なのか、関数の中にさらに関数を入れるときの書き方はどうなのかなどを理解するきっかけになればと思います。

コメント