Googleスプレッドシートで条件ごとに結果を分ける(条件分岐)時に使用するIFS関数がありますが、同様のことができるSWITCH関数もあります。
IFS関数とSWITCH関数の違いは、以下です。
- SWITCH関数:完全一致
- IFS関数:条件は不等号を使用して値が◯以上などでも指定ができる
IFS関数は数字が◯以上でグループ、ランク分けなどで使用することが多く、SWITCH関数は文字列や値の完全一致でグループ、ランク分けする時に使用します。
またIF関数を複数入れ子でも同様のことはできますが、条件が多かったり、結果を4つ以上に分類したい時は入れ子が増えてわかりにくくなるため、IFS関数かSWITCH関数を使うことをおすすめします。
INDEX
スプレッドシートのSWITCH関数の使い方
評価が「優・良・可」は『合格』、
評価が「不可」なら『不合格』、それ以外は『-』に分ける
条件ごとに異なる結果を表示する
4つの評価により「合格」か「不合格」か分類するには以下のような数式を入力します。
1. 結果を表示させたいセルを選択します。
(今回はセルC4)
2. =SWITCH(B4,"優","合格","良","合格","可","合格","不可","不合格","-") と入力します。
=SWITCH(B4,"優","合格","良","合格","可","合格","不可","不合格","-")
3. セルC4の数式をC13までコピーします。
B列の評価によりC列に表示される結果が以下のように分かれました。
・B列が「優」なら『合格』
・B列が「良」なら『合格』
・B列が「可」なら『合格』
・B列が「不可」なら『不合格』
・それ以外は『-』
条件分岐のイメージフローチャート
IFS関数で結果を分ける方法
IFS関数もSWITCH関数と同様、条件ごとに結果を分けることができます。
条件が完全一致の時はどちらの関数でも構いませんが、点数が何点以上、売上がいくら以上、のように「>」や「<=」などの記号を使用した条件の時はSWITCH関数ではできないため、IFS関数を使用します。
IFS関数で条件ごとに結果を分ける
IFS関数で指定する条件は、以下ように数式を入力します。
=IFS(B4="優","合格",B4="良","合格",B4="可","合格",B4="不可","不合格")
条件分岐のイメージフローチャート
IFS関数の条件分岐のイメージは以下のようになっています。
先頭から順に条件に一致するかしないかで処理を分けていきます。
IF関数で結果を分ける方法
SWITCH関数、IFS関数と同じことが、IF関数にIF関数を入れ子にすることでもできます。
関数を複数組み合わせて使うことを「ネスト」といいます。
IF関数×IF関数で条件ごとに結果を分ける
上記と同じ事を、IF×IFで結果を分けることもできます。
ただし、以下のように複雑でわかりにくくなるため、
条件が多い場合や結果を4つ以上の分類する時は、IFS関数かSWITCH関数を使用するようにしましょう。
=IF(B4="優","合格",IF(B4="良","合格",IF(B4="可","合格",IF(B4="不可","不合格"))))
条件分岐のイメージフローチャート
IF関数をネストした時の条件分岐のイメージは以下のようになっています。
1つ目のIF関数で、"優"かそれ以外かの判別をし、
2つ目のIF関数で、"良"かそれ以外かの判別をし、
3つ目のIF関数で、"可"かそれ以外かの判別をし、
4つ目のIF関数で、"不可"かそれ以外かの判別をし結果を分けます。
スプレッドシートのSWITCH(スウィッチ)関数の構文
スプレッドシートのSWITCH関数は以下のように入力します。
引数 | 説明 |
---|---|
式 | セルを指定。 |
ケース | 式で指定したセルに対する条件を指定します。 |
値 | ケースで指定した条件に一致した場合に表示する値を入力。 |