2025/6/23

エクセルIFS関数の使い方: 複数の条件分岐 -「それ以外」の指定も必要

Thumbnail for エクセルIFS関数の使い方: 複数の条件分岐 -「それ以外」の指定も必要

はじめに

エクセルのIFS関数は、 単体で複数の条件分岐が可能な関数です。 バージョン2019 / 365以降のエクセルでのみ使用可能です。

ここでは、IFS関数の

  • 基本機能・使い方
  • 関連する関数
  • 使用例、応用法

について取り扱います。

基本機能・使い方

IFS関数は、 条件とそのときの値をセットにして、複数の条件分岐が設定できます。 論理式設定順序も重要 です。

fxIFS関数
IFS ( 論理式1, 値が真の場合1, 論理式2, 値が真の場合2, ... )

論理式1の値がTRUEのときに値が真の場合1を返し、FALSEのときに論理式2の判定に入る。 論理式2の値がTRUEのときに値が真の場合2を返し、FALSEのときに論理式3の判定に入る。 ... (すべての論理式の判定が終わるまで、上記の流れが続く)

論理式1
: 必須
A1:A4
論理値 (TRUE / FALSE) を返す条件式。1番目に判定される。
値が真の場合1
: 必須
TRUE
論理式1がTRUEの場合に返す値。
論理式2
: 任意
A1:A4
論理値 (TRUE / FALSE) を返す条件式。2番目に判定される。
値が真の場合2 , ...
: 任意
TRUE
論理式2がTRUEの場合に返す値。

「それ以外」の指定の仕方

IFS関数では、「それ以外」 (すべての論理式FALSE のときの設定方法が独特です。 一番最後の論理式TRUEを設定する 必要があります。

以下のIF関数とIFS関数の記述が等価になります。

IF関数とIFS関数の対応式

IF関数:
  IF( 条件式, TRUEのときの値, FALSEのときの値)

IFS関数:
  IFS( 条件式, TRUEのときの値, TRUE , FALSEのときの値)

比較演算子の種類

論理式には、 比較演算子が使用できます。 論理式関連の関数(後述)と組み合わせると設定できる条件の幅が広がります。

比較演算子

数値同士や文字列同士を比較するときに使用する演算子です。
演算結果として、TRUE または FALSE が返されます。

比較演算子意味使用例
=等しい (==)A1=0
<>等しくない (\ne)A1<>0
>より大きい (>>)A1>0
<より小さい (<<)A1< 0
>=以上 (\geq)A1>=0
<=以下 (\leq)A1<=0

関連する関数

IFS関数に関連する関数を紹介します。
(○:複数条件対応、×:複数条件未対応, -:条件設定不可)

  • 分岐グループ(入力値に応じて分岐させ、指定の出力値が取得可能)
    • IF (×):単一条件で分岐
    • 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)を返す

使用例、応用例

IFS関数の使用例・応用例として、以下のパターンを紹介します。

  • 多数の条件を管理しやすく記述:論理式を別セルから参照。

多数の条件を管理しやすく記述

論理式を別セルから参照する形式にすることで、 設定条件が多数になっても管理しやすくなります。 たとえば、10個以上の設定条件を1つの式に記入すると、 式が長くなり見づらく、管理が困難となりますが、 この方法により改善できます。

関数の構成

=IFS( 判定結果1, "A" , 判定結果2,"B" , 判定結果3 ,"C" , TRUE , "D")


ABCDEF
1判定1 (80以上?)判定2 (60以上?)判定3 (40以上?)ランク
2100TRUETRUETRUEA
390TRUETRUETRUEA
480TRUETRUETRUEA
570FALSETRUETRUEB
660FALSETRUETRUEB
750FALSEFALSETRUEC
840FALSEFALSETRUEC
930FALSEFALSEFALSED
1020FALSEFALSEFALSED
1110FALSEFALSEFALSED
120FALSEFALSEFALSED