条件(論理式)により答えを分岐させる場合にたいへん重宝する関数です。
例えば、成績表で80点以上なら合格、80点未満なら不合格とするだとか、年齢が20歳以上は成人、20歳未満は未成年とするなど、ある値を基準に何かの条件(論理式)を付けて、A(合格)かB(不合格)なのかどちらかの結果を表示することが可能です。
if関数
IF(論理式, [真の場合], [偽の場合])
論理式は通常比較演算子を使って表します。
論理式内では以下の比較演算子を使用して条件を指定します。
= (等号) | 左辺と右辺が等しい | A1=B1 |
> (~より大きい) | 左辺が右辺よりも大きい | A1>B1 |
< (~より小さい) | 左辺が右辺よりも小さい | A1<B1 |
>= (~以上) | 左辺が右辺以上である | A1>=B1 |
<= (~以下) | 左辺が右辺以下である | A1<=B1 |
<> (不等号) | 左辺と右辺が等しくない | A1<>B1 |
真の場合、偽の場合は文字列でもセル参照でも数式でも構いません。
たとえば
A | B | C | |
1 | 国語 | 合否 | |
2 | 田中 | 88 | |
3 | 吉田 | 85 | |
4 | 山本 | 69 |
セルC3に国語の点数が80点以上だったら合格80点未満だったら不合格としたい場合にはC3のセルに『=if(C3>=89,”合格”,”不合格”)』という数式を入れると『C3>=89』という論理式はC3の値は88なので論理式は成立し真となります。真の場合が実行されるので『合格』と表示されます。
あとはC3のセルをオートフィルでコピーしておけば完成です。
応用としてましては合格点を変更した場合や、合格、不合格の表示を変更したい場合に対応できるようにしておけば変更に強い数式になります。
合格点が、86点に変更された場合や、『不合格』を『再テスト』に変更する場合すうしき自体を変更してもかまいませんが、ミスの発生の可能性が上がります。
合格点と合否の文字を別のセルに入力しておいて絶対参照すれば変更にも簡単に対応できます。
セルB7に合格点(今回は86点)A8に『合格』A9に『再テスト』と入力しておきます。セルC2の数式『=if(C3>=89,”合格”,”不合格”)』をセル参照に変更します。ただし、あとでオートフィルでコピーすることを考えて絶対参照にしておきます。『=if(C3>=$B$7,$A$8,$A$9)』とすることで今後合格点を変更する場合はセルB7の値を変更するば数式を触らなくても大丈夫です。