7/10/2026

Excel。どちらかが合致しているという条件式には、IFS関数でもOKです。【OR】

Excel。どちらかが合致しているという条件式には、IFS関数でもOKです。

<IF+OR関数 IFS関数>

WritingとReadingの結果、どちらかが70点より大きい場合は、○。

そうでなければ×と判定したい場合は、どちらか一方ということで、「~または~」というOR条件ですね。


そこで、IF+OR関数をつかった数式を設定します。

=IF(OR(B3>70,C3>70),"○","✕")

D3には、

=IF(OR(B3>70,C3>70),"○","✕")

という数式を設定して、オートフィルで数式をコピーしました。


どちらかが70より大きければ、○なので、D4とD5は✕になっています。


まぁ、問題はありません。


ただ、Excelの関数が苦手、関数の中に関数を設定するネストは苦手という人もいます。


そこで、他の方法もありますので、今回はその一つとして、IFS関数をつかった方法をご紹介します。

=IFS(B3>70,"○",C3>70,"○",TRUE,"✕")


E3には、IFS関数を設定しました。


=IFS(B3>70,"○",C3>70,"○",TRUE,"✕")


結果は同じになっていますね。


IFS関数は、複数の条件をまとめて設定できる関数です。


それぞれが70より大きいのかを設定してあげる。


そして、その他は、 TRUE を設定すれば、同じように求めることができます。


ただ、IF+OR関数もIFS関数の数式も、実は欠陥があります。


C5とC6の空白セルに、「欠席」と入力してみましょう。


すると、5行目が、どちらも○に変わってしまいました。


原因は、欠席という文字は、数値よりも大きいからです。


最悪なのは、6行目のほうです。

結果はあっていますので、チェックをすり抜けます。


後日、83が70以下に変わってしまうと、トラブルが発生するというわけです。


100点が最高値ならば、100以下という条件も追加すればいいように思えますが、100以下だと、70以下も含まれてしまうため、条件を追加するだけではダメです。


このような場合、文字を入れさせないように、運用上のルールを設けるのがいいと思います。


ただ、どうしても、というのであれば、文字じゃないという条件を追加する必要があります。

=IF(OR(IF(ISNUMBER(B3),B3,0)>70,IF(ISNUMBER(C3),C3,0)>70),"○","×")

D3の数式を変更しました。

=IF(OR(IF(ISNUMBER(B3),B3,0)>70,IF(ISNUMBER(C3),C3,0)>70),"○","×")


ISNUMBER関数は、数値かどうかを確認する関数です。

ISNUMBER(B3)が成立、すなわち、数値ならば、B3をつかいます。

ISNUMBER(B3)が不成立ならば、0として判断させます。


このように、対応はできますが、数式が複雑化していくことになりますから、運用上で対応というのでもいいかと思います。