Excel情報525 関数--複数の条件分岐をシンプルに設定できるSWITCH関数の使い方について
【テーマ】
複数の条件で結果を分岐するにはIF関数で設定可能ですが、複雑な数式になります。そこで今回は複数の条件分岐でもシンプルな数式で表せるSWITCH関数をご紹介します。
【方法】
=SWITCH(検索値,値1,結果1,値2,結果2,・・・,既定値)で設定します。検索値に対して、最初に一致する値に対応した結果を返します。
【参考】
SWITCH関数は、Excel2016(Microsoft365)から導入された関数です。値が「完全一致」する場合のみ結果が反映されます。
IF関数で複数の条件の結果を分岐すると、複雑な数式になります。
そこで今回は、複数の条件分岐をシンプルな数式で表せるSWITCH関数をご紹介します。
D5セル(上図の赤枠)の数式
IF関数の場合
SWITCH関数の場合
■SWITCH関数とは
   複数の値の中から最初に一致する値を求める関数です。
   いずれにも一致しない場合は、任意指定の既定値が表示されます。
上記の数式を例に、SWITCH関数を説明します。
=SWITCH(C5,"S","30%",A,"25%",・・・・・・・・・・,"割引なし")
検索値: 検索したい値を指定します。
  値: 検索される値を指定します。
   結果: [検索値]が[値]に一致したときに表示したい値を指定します。
既定値: [検索値]が[値]のどれにも一致しなかった時に表示したい値を指定します。(省略可)
  「検索値」に指定したセルの値が、   「値」と一致する場合は、
それぞれの値に対応した    「結果」を表示します。
        例. C5セルの値が A の場合、結果は 25%
  「検索値」に指定したセルの値が、   「値」のどれにも一致しなかった場合は、
  「既定値」を表示します。
        例. C5セルの値が S,A,B,C,D以外(どの値にも当てはまらない) の場合(下図では空白)、
      結果は 割引なし
■ご参考までに
SWITCH関数は「完全一致」した条件しか使えず、
IF関数やIFS関数のように「〜未満」「〜以上」「〜ではない」のような条件式は使用できません。
また、ワイルドカードも使用できません。
※IFS関数については、以下のバックナンバーをご参照ください。
【バックナンバー481】 関数--IFS関数
=SWITCH(A1,"<1","OK",">=1","NG")  ⇒ 「〜未満」や「〜以上」といった条件式使用不可
=SWITCH(A1,"<>1","OK","<>2","NG")  ⇒ 「〜ではない」といった否定の条件式使用不可
=SWITCH(A1,"*本店",1,"*支店",2)  ⇒ ワイルドカード使用不可
Copyright(C) アイエルアイ総合研究所 無断転載を禁じます