SWITCH関数(振り分け)

スウィッチ

SWITCH関数は、引数の値(検索値)から対応する結果(値・文字列)を返す関数です。任意の値と対応する結果は、予め引数に入力しておきます。

例:SWITCH関数を入力。第1引数に検索値、第2・3引数に任意の値と対応する結果、以後第4・5引数などにも2つをセットで入力します。

最後の引数に既定の値、対応する値がない場合に返す結果を入力します。この例では空白(何も表示しない)となります。

文字列はダブルクォーテーションを使います。

SWITCH関数

Enterで結果が表示されます。検索値1に対応しているAが表示されます。右寄せで表示。

対応している結果

オートフィルの結果。引数の値によって結果が振り分けられます。C9は 検索値5に対応する値がないため 既定の空白(何も表示しない)となります。

オートフィルの結果

同様に関数を入力。引数の値には数値の他 文字列も使うことができます。

検索値に文字列

オートフィルの結果。引数の値によって結果が振り分けられます。C6とC8は 対応する値がないため、既定の不可という文字列が表示されます。中央揃えで表示。

オートフィルの結果

SWITCH関数は、いくつか類似している関数があります。

まず、CHOOSE関数があります。引数に検索値に対応する結果を入力するという点で SWITCH関数と同じですが、CHOOSE関数は1から始まる連続した数値のみ検索値として使うことできるのに対して、SWITCH関数は数値が連続している必要はなく 文字列も使うことができます。

次に、LOOKUP関数VLOOKUP関数があります。検索値に対応する値がない場合に LOOKUP関数やVLOOKUP関数はエラーが出るのに対して、SWITCH関数は 検索値に対応する値がない場合の既定の結果を入力することができます。

また最も類似している関数は、IFS関数です。

上記の例1・例2では、SWITCH関数とIFS関数は同じ結果になります。

  • =SWITCH(B5,1,”A”,2,”B”,3,”C”,4,”D”,””)
  • =IFS(B5=1,”A”,B5=2,”B”,B5=3,”C”,B5=4,”D”,TRUE,””)
  • =SWITCH(B5,”A”,”優”,”B”,”良”,”C”,”可”,”不可”)
  • =IFS(B5=”A”,”優”,B5=”B”,”良”,B5=”C”,”可”,TRUE,”不可”)

ともに対応する値がない場合の結果を引数の最後に入力します。

SWITCH関数は、IFS関数における等号の論理式を使う場合の記述を簡潔にしたものであると考えられます。条件分岐というよりも、切り替える・振り分けるという処理に近いといえます。SWITCH関数とIFS関数は、Microsoftの関数の分類で ともに論理関数に分類されています。