これからエクセルの関数を覚えようとする中で「複数の条件付けをしたい」と考えながらも、どこか苦手意識を持つ方も多いでしょう。
しかし、IF関数は一度コツさえ掴んでしまえばそれほど難しいものではありません。
また、IF関数の基本的な内容を理解できれば「SUMIF」や「COUNTIF」といった応用的な関数を使う際にも役立ちます。
そこで本記事では、ExcelのIF関数に関する概要や具体的な使い方、IFを含むその他の関数までわかりやすく解説します。
記事を読み終えると、IF関数について学ぼうとしている方もすぐに使えるようになります。
ExcelのIF関数とは
ExcelのIF関数とは、条件を設定して「●●の場合はA」「●●の場合はB」といったように、自動的に条件にあわせて値を設定できます。
例えば「80点以上であれば合格」や「60歳以上であれば2割引き」といったように、さまざまな使い方ができます。
IF関数の式の形式
=IF(論理式 , 値が真の場合 , 値が偽の場合)
論理式 | 条件 |
---|---|
値が真の場合 | 条件に合っているときに表示させる |
値が偽の場合 | 条件に合っていないときに表示させる |
倫理式とは「=」「>」「<」のいずれかがあてはまります。
- B2のセルが1であればB2=1
- C3のセルが1より大きいのであればC3>1
- D2のセルが1より小さいのであればD2<1
具体的に使ってみましょう。
合格点が60点以上のテストの場合、D3のセルに次のような式を入力すると77点と60点以上であるため合格と表示されます。
C3の部分は対象となる人の点数、>=60は60点以上、合格が真、不合格が偽となります。
IF関数の基本的な使い方
IF関数についてさらに理解を深めるためにも、ここからは基本的な使い方をご紹介していきます。
セル位置の設定
セル位置の設定とは上のExcelの表でいうと「C3が60点以上なら合格」や「60点未満なら不合格」といった部分を指します。この場合の関数式は次のとおりです。
=IF(C3>=60,”合格”,”不合格”)
引数に使える比較演算子
比較演算子 | 使い方 | 意味 |
---|---|---|
= | A1=C3 | A1とC3の値が等しければTRUE、そうでない場合はFALSE |
<> | A1<>C3 | A1とC3の値が異なればTRUE、そうでない場合はFALSE |
> | A1>C3 | A1がC3より大きい値であればTRUE、そうでない場合はFALSE |
< | A1<C3 | A1がC3より小さい値であればTRUE、そうでない場合はFALSE |
>= | A1>=C3 | A1がC3以上であればTRUE、そうでない場合はFALSE |
<= | A1<=C3 | A1がC3以下であればTRUE、そうでない場合はFALSE |
IF関数の応用的な使い方
ここでは、IF関数の応用的な使い方についてもみていきましょう。
IF関数とAND・OR関数で複数条件を指定する
「試験1が70点以上」なおかつ「試験2が60点以上」だったら「合格」といったように、条件が2つある場合は次のようにANDで式を作成します。
=IF(AND(B2>=70,C2>=70)
伊藤さんは試験1,2ともに合格点に達しているため合格です。
式は「試験1(B列)が70点以上」、「試験2(C列)が60点以上」と並列します。
最後に満たしている場合と満たしていない場合を追加し、ここでは「“合格”,“不合格”」となります。
また「試験1が70点以上」もしくは「試験2が60点以上」の場合、次のようにORでも作成できます。
菊池さんのケースですが、試験1は48点で合格点に足りていませんが、試験2は60点で合格点を達成しているため結果的に菊池さんは合格となります。
IF関数の結果を空白にする
IF関数の結果を「文字が入ってたら値を返す」や「 空白なら空白にする」といったようにすることも可能です。
例えば、B6の前田さんが受験せずにC6が空白の場合、D6を空白にするには次のように式を入力します。
=IF(C6=””, “”, C6)
IF関数とIFERROR関数で結果を空白にする
数式結果がエラーになった場合、空白にするように指示するには次の式を入力します。
=IFERROR(数式,””)
エラーとなった場合はすべて空白で表示されます。
IFS関数で複数条件の指定する
IFS関数を使うことで3つまた4つ以上の複数条件を表示することが可能です。
例えば、テストの点数によって次のようにクラスが変わる場合があるとします。
Aクラス | 90点以上 |
Bクラス | 80点以上 |
Cクラス | 70点以上 |
この場合は表示したいセル(この場合はD2)の上に、次のように対象となるセル(例としてB2 )を設定して式を作ります。
=IFS(B2>=90,”Aクラス”,B2>=80,”Bクラス”,B2>=70,”Cクラス”)
Excelで使えるIFを含むその他の関数
Excelで使えるIFを含む関数には次のようにさまざまな種類があります。
- SUMIF
- COUNTIF
- AVERAGEIF
- DATEDIF
- MAXIFS・MINIFS
ここでは、それぞれの詳しい内容について解説します。
1.SUMIF
SUMIFは条件に合う数を合計します。
=SUMIF(範囲,検索条件,合計範囲)
例えば、6月に受験した生徒の点数を合計する場合は、次のように入力します。
=SUMIF(C:C,6,B:B)
2.COUNTIF
条件に合う数をカウントする場合はCOUNTIFを使います。
=COUNTIF(範囲, 検索条件)
例えば、6月に受験した生徒数のみを数えたい時に利用できます。
計算方法もSUMIFからからCOUNTIFに変わっただけで基本的に同じです。
ただし、COUNTIFは点数に関係がないため「=COUNTIF(C:C,6)」とします。
エクセルのCOUNT関数についてはこちらの記事で詳しく解説しています!
3.AVERAGEIF
条件を満たした数の平均を出す場合はAVERAGEIFを使います。
=AVERAGEIF(範囲, 検索条件, 平均対象範囲)
式はSUMIFからAVERAGEIFに変わっただけです。この例では、6月に受験した生徒の平均点数を割り出しています。
4.DATEDIF
2つの日付の間の日数を自動的に計算する場合はDATEDIFを使用します。誕生日や利用期間などを表す際に便利な関数です。
=DATEDIF(開始日,終了日,単位)
以下の例では、入会日からF2に記載される日付までの年数を算出しています。
Yの部分は「何年間か」を表示しており「何か月ならM」「何日ならD」とします。
5.MAXIFS・MINIFS
条件にあう最大値と最小値も関数を使って出す場合はIF関数でなく、MAXIFS・MINIFSも使用できます。
- =MAXIFS(最小範囲,条件範囲1,条件1,【条件範囲2,条件2】,・・・)
- =MINIFS (最小範囲,条件範囲1,条件1,【条件範囲2,条件2】,・・・)
次の受験者の中で6月受験者の最高点を表示するにはMAXIFSを使います。
先に点数を表示しているB列を表したいのでB:B、次に受験月を表すためC:C、最後に6月なので”6”となります。
最高点数(最大値)と同じように、最低点数(最小値)も出すことができます。MAXIFSではなく、MINIFSを使うだけであとは同じです。
まとめ
IF関数はEXCELのリスト上で条件にあったデータや値だけを自動的に反映できます。
また、条件を複数設定したり、条件にあったデータを合計したり数をカウントしたりなどさまざまなことが可能です。
まずは基本的な使い方を正しく理解し、慣れてきたら応用的な使い方やIFが含まれるその他の関数についても挑戦してみましょう。
Excelに関するさまざまな作業が効率化されるはずです。