エクセルIF関数の使い方: if else文のように条件分岐

はじめに
エクセルのIF関数は、
ここでは、IF関数の
- 基本的機能・使い方
- 関連する関数
- 使用例、応用法
について取り扱います。
基本的機能・使い方
IF関数は、条件を設定し結果を分岐させる関数 です。
一般的なプログラミング言語のif else文に相当する機能を持ちます
論理式
, TRUE時の値
, FALSE時の値
)論理式
の値が TRUE か FALSE かに応じて分岐 し、
それぞれに対応した値 (TRUE時の値
/ FALSE時の値
) を返す。
論理式
TRUE時の値
FALSE時の値
論理式には、
比較演算子
数値同士や文字列同士を比較するときに使用する演算子です。
演算結果として、TRUE または FALSE が返されます。
比較演算子 意味 使用例 = 等しい () A1=0 <> 等しくない () A1<>0 > より大きい () A1>0 < より小さい () A1< 0 >= 以上 () A1>=0 <= 以下 () A1<=0
関連する関数
IF関数に関連する関数を紹介します。
(○:複数条件対応、×:複数条件未対応, -:条件設定不可)
分岐系の関数
入力値に応じて分岐させ、指定の出力値が取得できる関数です。
- IFS (○):複数条件で分岐
- CHOOSE (-):インデックスで値を選択
- SWITCH (○):値によって返す値を切り替え
エラー対応系の関数
エラー値に対して分岐処理するときに役立つ関数です。
- IFERROR (-):エラー時の値を指定
- IFNA (-):#N/Aエラー時の値を指定
集計値取得系の関数
条件設定をして集計値の取得ができる関数です。
- SUMIF (×) / SUMIFS (○):条件に合う合計値の算出
- COUNTIF (×) / COUNTIFS (○):条件に合う値の個数(カウント数)の取得
- AVERAGEIF (×) / AVERAGEIFS (○):条件に合う値の平均の算出
- MAXIFS (○) / MINIFS (○):条件に合う値の最大値 / 最小値の取得
- SUMPRODUCT (○):条件に合う値の合計値・個数(カウント数)の取得
論理式関連の関数
論理式の中で複雑な条件を設定するときに役立つ関数です。
- AND (-):すべての条件がTRUEの場合にTRUEを返す
- OR (-):いずれかの条件がTRUEの場合にTRUEを返す
- NOT (-):論理値を反転する
- XOR (-):排他的論理和(奇数個のTRUEでTRUE)を返す
使用例、応用例
IF関数の使用例・応用例として以下のパターンを紹介します。
- 複数のIF関数の組合せ:「○以上 ○以下」の複数条件を設定する。
- AND + OR関数との組合せ: and と or を同時に使用した複雑な条件を設定する。
- MOD関数との組合せ: 「偶数なら○、奇数なら×」の条件を設定する。
- COUNTIF関数との組合せ1: 「リストに検索値があれば○」の条件を設定する。
- COUNTIF関数との組合せ2: ワイルドカードを使った特定の文字列を含む検索を行う。
複数のIF関数の組合せ
「3以上 かつ 4以下」の複数条件を設定し、結果を分岐させる例です。
関数の構成
=IF( 条件式1,
IF( 条件式2, TRUEのときの値, FALSEのときの値 ) ,
FALSEのときの値
)
AND + OR関数との組合せ
ANDとOR関数を組み合わせて
「カテゴリ = スマホ」
関数の構成
=IF(
OR(
条件1 ,
AND( 条件2-1 , 条件2-2)
),
TRUEのときの値,
FALSEのときの値
)
MOD関数との組合せ
偶数のときと奇数のときで分岐させる例です。
関数の構成
=IF(
MOD( 数値 , 2)=0,
偶数のときの値,
奇数のときの値
)
※ ISEVEN, ISODD関数でも可能です
(ISEVEN関数:偶数のとき TRUEを返す / ISODD関数:奇数のとき TRUEを返す)。
COUNTIF関数との組合せ1
「リストの中に検索値があれば○」を返す例です。
関数の構成
=IF(
COUNTIF( 配列 , 検索値),
検索値があるときの値,
検索値がないときの値
)
COUNTIF関数との組合せ2
ワイルドカード※を使ったあいまい検索を行う例です。
関数の構成
=IF(
COUNTIF( 検索対象 , 検索値),
検索値があるときの値,
検索値がないときの値
)
ワイルドカード
ワイルドカードとは、任意の文字列を表す特殊な文字のことです。
言葉で表すと「ほにゃらら」「○○」などのイメージです。
特定の文字列が含まれるかどうかを調べるときに使用します。
関連する記号としては、以下があります。
- * (アスタリスク記号):任意の文字列(文字数不定)
- ? (疑問符 / ハテナ記号):任意の1文字
- ~ (チルダ記号):エスケープ記号(*, ? 記号を検索文字として使用する場合に使用)
関連記事











