なんだかんだでエクセルは便利だと思う今日この頃。ちょいと、使う機会が多いエクセルのIF関数についてまとめてみようと思う。
関連 エクセルで特定条件のセルをカウントする方法。COUNTIFの使い方
目次
概要
書式
=IF(論理式,[値が真の場合],[値が偽の場合])
論理式に比較演算子の式を入れ、その条件が満たされた場合は「真の場合」で設定した内容を表示、満たされない場合は「偽の場合」で設定した内容が表示される。
文字列の比較もできる
例えば、下記の例ではA1のセルの値が70より上で条件を満たしている場合には、「真」の内容「合格」を表示し、それ以下であれば「不合格」を表示する内容となる。
=IF(A1>70,"合格","不合格")
また、数値だけではなく文字列を比較して条件判定もしてくれる。文字列の条件を判定するためには、文字列を「”(ダブルクオーテーション)」で囲う必要がある。
=IF(A1="女性","2割引","通常")
サンプル書式をいくつかピックアップしてみた。
A1 | サンプル書式 | 表示結果 | 概要 |
---|---|---|---|
70 | =IF(A1>70,”合格”,”不合格”) | 不合格 | A1の値が70より大きくないので、「偽」の「不合格」を表示 |
70 | =IF(A1<70,"70以下","") | A1の値が70よりより小さくないので、「偽」の「””(空白)」を適用 | |
70 | =IF(A1=80,”条件に一致”) | FALSE | 「偽」の場合の条件を省略すると「FALSE」を表示 |
=IF(A1=””,”空白”,”データあり”) | 空白 | A1が空白であるかどうかを判定。この場合は空白となる。 | |
女性 | =IF(A1=”女性”,”2割引”,”通常”) | 2割引 | 文字列の比較で「女性」と一致するので、「真」の「2割引」を表示 |
EXCEL | =IF(A1=”excel”,”Excel”,”エクセル”) | Excel | 文字列の比較でアルファベットの大文字小文字は関係なく条件一致となる |
EXCEL | =IF(A1=”excel”,”Excel”,”全角”) | 全角 | 文字列の比較でアルファベットが全角の場合は「偽」となる |
等号・不等号(比較演算子)の取り扱いについて
上記の書式の「論理式」の箇所に比較演算子と呼ばれる等号、不等号を用いて値を比較するので等号、不等号の意味をしっかりと覚えよう。
「=(等号)」があれば、その値を含むと覚えておけばバッチリ。
それと、「=(等号)」は右側に書かないとエラーとなる。
比較演算子 | 概要 |
---|---|
A1>70 | A1の値が70より大きい場合。70は含まない。 |
A1>=70 | A1の値が70、又は70より大きい場合。70を含む。 |
A1<70 | A1の値が70より小さい場合。70は含まない。 |
A1<=70 | A1の値が70、又は70より小さい場合。70を含む。 |
A1=70 | A1の値が70の場合。 |
エクセルIF関数の複数条件
複数条件を使いたい場合のやり方。
複数条件をすべて満たしたい場合はAND関数
複数条件にすべて満たしたい場合は、論理式に入れ子でAND関数を使う。
IF(AND(条件式1,条件式2,...),真の場合,偽の場合)
下記のサンプル書式の場合、AND関数の中の条件式1の19より大きく、なおかつ条件式2の文字列「女性」が満たされているので、「真」の「成人女性」を表示し、そうでない場合は「偽」を表示する。
A1 | B1 | サンプル書式 | 表示結果 |
---|---|---|---|
20 | 女性 | =IF(AND(A1>19,B1=”女性”),”成人女性”,”それ以外”) | 成人女性 |
ちなみに、関数の中にさらに関数を使用する方法を「入れ子」、又は「ネスト」と言う。
複数条件のいずれかに一致させたい場合はOR関数
複数条件のいずれかに一致させたい場合は、論理式に入れ子でOR関数を使う。
IF(OR(条件式1,条件式2,...),真の場合,偽の場合)
例えば下記のOR関数の中の条件式1は19より大きく条件を満たし、条件式2は「女性」を満たしていないが、「いずれか」なので、「真」が適用される。
A1 | B1 | サンプル書式 | 表示結果 |
---|---|---|---|
20 | 男性 | =IF(AND(A1>19,B1=”女性”),”成人、又は女性”,”それ以外”) | 成人、又は女性 |
未入力セルの空白処理
例えば、下記のようにA1のセルに何も表記されていない場合、「偽」が適用されて「不合格」が表示される。
A1 | サンプル書式 | 表示結果 |
---|---|---|
=IF(A1>70,”合格”,”不合格”) | 不合格 |
「偽」の条件結果を表示させたくない場合は、下記のように空白処理をやっておくことで解決できる。
A1 | サンプル書式 | 表示結果 |
---|---|---|
=IF(A1=””,””,IF(A1=70,”条件一致”,”条件不一致”)) |
上記の例は、A1のセルが何も表記されていない場合、何も処理をしない、表記されている場合はその中のIFの処理を行うという意味になる。
言葉にすると、こんな感じ。
IF(A1が空白の場合,[真]空白を表示,[偽]IF(A1が70の場合,[真]「条件一致」を表示,[偽]「条件不一致」を表示))
条件式によるセルの色変更
IF関数を覚えると、条件でセルや文字に色を付けたくなるが、残念ながらできない。その場合には、「条件付き書式」を利用することでできるようになる。
まずは、テキストや背景色を変更したいセルを選択。
続いては、「条件付き書式」、「セルの強調表示ルール」とアクセスして変更したいルールを選択。数値を判定する不等号式や文字列、日付なども条件でセルの色を変更することができるので、状況に応じて選択。
ここでは、サンプルで「指定の値より大きい」を選択。
そしたら、値を入力して「OK」を選択するだけ。
サンプルでは、A1のセルが入力した値「60」よりも大きかったら、書式の「濃い赤の文字、明るい赤の背景」が適用されてご覧のように色が変わっている。
書式で「ユーザー設定の書式」を選択すると独自の色や背景色、文字の大きさを設定できる。
セルの書式書式の詳細。