『Excel VBA 表計算とプログラミング学習サイト』では、アフィリエイトプログラムを利用して商品を紹介しています。

【Excel】試験の合否判定シート

比較演算子の応用編です。試験の点数によって 合否を判定するシートを作りながら、比較演算子と論理関数の使い方を学びます。

【Excel】受験者の合否判定を表示します

Excel の IF 関数は第1引数に指定した論理式を満たしているか否かで処理を条件分枝させることができます。

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

[論理式] に比較演算子を用いた数式、それが成り立っている場合と、成り立っていない場合に表示する値を残りの引数で指定します。それでは下の図のように 5 人の受験者について C 列に点数を並べて、60 点以上であれば合格、60 点未満であれば不合格を表示させてみます。
 
エクセル合否判定シート①
 
セル D3 には

=IF(60<=C3,"合格","不合格")

と入力して D7 までオートフィルです。すると受験者全員の合否判定が D 列に並びます。
 
次は論理関数ANDを組合わせてみます。AND関数は

=(論理式1,論理式2[,論理式3]...)

のように論理式を並べて、全ての論理式が成立している場合に TRUE(真) を返し、1つでも成立していなければ FALSE(偽) を返します。ANDもまた単独では使い道の少ない関数で、IF関数にネスト(入れ子)することで応用範囲が広がります。それではこのAND関数を使って数学と英語の2科目ともに 60 点以上をとった場合に合格、それ以外を不合格とするシートを作ってみます。
 
エクセル合否判定シート②

C 列と D 列に点数が並んでいます。数学の点 (C3) と英語の点 (D3) がともに 60 点以上であるということを表すには AND関数を使って

=AND(60<=C3,60<=D3)

と記述します。「60<=C3」(C3 の値が60 以上) 、「60<=D3」(D3 の値が60 以上) という2つの条件を共に満たす場合に TRUE(真) を、どちらかでも満たさない場合に FALSE(偽) という論理値を返します。これを IF関数の [論理式] に入れて、セル E3 には

=IF(AND(60<=C3,60<=D3),"合格","不合格")

と記述して、セルE7 までオートフィルします。するとネストされた AND関数の論理値にしたがって「合格」か「不合格」を返すのです。2科目ともに 60 点以上とっている人だけ「合格」となっていることを確認してください。
 
関連記事:【VBA】論理演算子

コメント