スプレッドシートでの合否判定でつかえるテクニック・関数

スプレッドシートでの合否判定でつかえるテクニック

スプレッドシート合否判定での関数の使い方

すべて〇〇点以上なら合格

複数回のテストを受けて、そのすべてが一定の点数以上の場合は合格とするというときの合否判定式の書き方はこうなります。

=if(and(対象のセル1>=合格点,対象のセル2>=合格点),"合格","再チャレンジ")

and関数は()内の「,」で区切ったすべての式があてはまるときに【TRUE】となります。

 

上の例では、IF文の条件にand関数を用いているので、これが【TRUE】のときに”合格”と表示され、それ以外は"再チャレンジ"と表示されます。

 

IF文の入れ子だとテストの回数が増えるとややこしくなる

=if(A3>=80,if(B3>=80,"合格","再チャレンジ"),"再チャレンジ")

上記のようにIF文の中にIF文を書く方法でも合否判定は行えますが、判定対象とするテストの回数が増えると、IF文だらけでややこしくなります。and関数を使用することをおすすめします。

 

テストを受けていないとき(空白)を除外するには

IF文+and関数だと空白のセルがあった場合に、条件に合致しません。

転入生などでテストを受けていない場合は空白にするケースがあると思います。

こうした場合はmin関数を用いることで、空白を除外して判定を行うことができます。

=if(min(対象のセル範囲)>=合格点,"合格","再チャレンジ")

MIN関数は空白セルを除外するので、これで最低点を求めて合格点と判定すれば、空白は除いて合否判定が行えます。

最低点が合格点以上ということはすべての点数が合格点以上

 

すべて〇〇点以上かつ合計点が◎◎点以上なら合格

複数の条件で合否判定を行う場合は下記のように計算式を設定します。

=if(and(min(対象のセル範囲)>=合格点,sum(対象のセル範囲)>=合計合格点),"合格","再チャレンジ")

図の例は各回のテストが80点以上でかつ合計点が170点以上の場合に「合格」とするものです。

  • IF文の判定式にand関数を使用
  • and関数の中でmin関数とsum関数を使用
  • min関数で各回のテストが80点以上であることを判定
  • sum関数でテストの合計点が170点以上であることを判定

この書き方であれば、テストの回数が3回、4回…と増えていっても、記述する計算式が複雑になることがありません(対象とするセル範囲を拡げるだけ)。

 

〇〇点以上を取ったことがあれば合格

1回でも指定の点数以上を取れば合格とする場合は、IF文とmax関数で次のように記載します。

=if(max(対象のセル範囲)>=合格点,"合格","再チャレンジ")

max関数は、指定した範囲の中で最大値を返すので、この値が合格点以上かを判定します。

 

1回でも〇〇点以上または合計点が◎◎点以上なら合格

1回でも指定の点数以上を取るか、合計点が指定の点数以上なら合格とする場合は次のようになります。

=if(or(max(対象のセル範囲)>=合格点,sum(対象のセル範囲)>=合計での合格点),"合格","再チャレンジ")

or関数は()内の「,」で区切った式のいずれかがあてはまるときに【TRUE】となります。

  • IF文の判定式にor関数を使用
  • or関数の中でmax関数とsum関数を使用
  • max関数でテストで1回でも80点以上を取ったことがあるかを判定
  • sum関数でテストの合計点が150点以上であることを判定