【図解付き】Excelで複数条件もクリアにできるSWITCH関数について解説

Microsoft Excel(以下、Excel)の関数の中でもよく使われるIF関数。指定した条件にしたがって処理を分岐させられますが、複数条件を指定すると関数の式が複雑になります。 IF関数を同時に複数用いることを「入れ子構造」「ネスト」などと呼びますが、今回はネストせずに、シンプルに複数条件を指定できて、データ集計の作業などを効率よく進めることができるSWITCH関数をご紹介します。

【Excel】IF関数より手軽に条件分岐! SWITCH関数で上手に時短

※SWITCH関数はExcel2016で新たに追加された関数であるため、以下のバージョンを使っている方のみ利用可能です。「SWITCH関数が使えない」「SWITCH関数が機能しない」という場合には、バージョンが古いものである可能性もあるので、確認してみてください。

・Excel2016以上
・Office 365 の最新のもの
・Excel Online
・Excel Mobile

 

Excelで複数条件を指定する方法は大きく3つ

Excelで複数の条件に対応させるために使える関数は全部で3つあります。

●IF関数
●IFS関数
●SWITCH関数

IF関数は、Excelのもっともベーシックな関数のひとつで、1つの論理式に当てはめた結果を「真(TRUE)」と「偽(FALSE)」の2つに分岐します。「=IF(論理式,値が真の場合,[値が偽の場合])」のように定義されます。「=IF(論理式,値が真の場合,IF(論理式,値が真の場合,IF(…))」というように、IF関数を2つ、3つと重ねていくことで複数条件の指定も可能です。

また、IF関数の場合、「AND」や「OR」を使って、条件分岐をすることもできます。以下の記事ではIF関数について詳しく紹介しているので、こちらもぜひ参考にしてみてください。

<関連>
ExcelのIF関数の使い方!基本から応用まで徹底解説

IFS関数はIF関数の発展形。複数条件をよりシンプルに表すことができ、「=IFS(論理式1 , 真の場合の値1 ,論理式2 , 真の場合の値2… )」と定義されます。

そして、SWITCH関数も複数条件をまとめて表せる関数です。

例えば、以下のようにランクに応じて評価を表したい場合、IF関数・IFS関数・SWITCH関数でそれぞれの式を表すと次のようになります。

IFS関数とSWITCH関数は一見すると似ていますが、使い方が少々異なります。違いについては記事の後半でお伝えしていきます。

次の章からはSWITCH関数の具体的な使い方や活用方法などを詳しく見ていきましょう。

 

複数条件を指定できるSWITCH関数とは?

SWITCH関数複数の条件を指定できる関数です。式は「SWITCH (検索値, 値1, 結果1, 値2, 結果2,…)」で定義されます。一見すると複雑な関数に見えますが、使い方はいたって簡単です。

検索値」に一致するものを、「1」から順に探していき、一致した値に対応する(すぐ後ろにある)「結果」を表示します。検索値がもしどの値にも当てはまらない場合には、「その他0として結果を表示させることができます。基本的に「値と結果」はセットとなりますが、「その他」を指定する場合は最後に結果のみを入力します(上の例では「ランク外」)。

 

SWITCH関数はどんな時に使える?

さて、使い方はわかったものの、イマイチどんな場面で活用したらいいのかわかりませんよね。そこで次は具体的にどのようなシーンでSWITCH関数が使えるのかをご紹介します。

 

SWITCH関数を使って、指定の曜日だけを抜き出す

SWITCH関数とWEEKDAY関数を組み合わせれば、ランダムに並んだ日付から指定の曜日を洗い出すことができます。以下の場合の式は、「=SWITCH(WEEKDAY(A2),1,"日曜日",7,"土曜日","平日")」です。

 

SWITCH関数を使って、部署に対応するコードを表示させる

部署に対応するコードを表示させることもできます。IF関数を使ったら入れ子(ネスト)にしなくてはいけませんが、SWITCH関数を使えば式がシンプルでわかりやすくなります。

ただし、この方法は部署の数が少ない場合に限ります。部署数が多い場合は、延々と長文の式を作成しないといけないので逆に大変。そういった場合は、VLOOKUP関数を使いましょう。VLOOKUP関数については以下の記事で紹介しています。

関連記事:【Excel】朗報!これでVLOOKUPいらず!? 新たに登場するXLOOKUP関数とは?

 

SWITCH関数を使って、スコアの順位付けをする

RANK関数を組み合わせると、数値の順位付けができます。もちろん、RANK関数のみでも順位を付けることができますが、結果は数字で返されます。それを文字列に自動変換してくれるのがSWITCH関数です。

<関連>
ダウンロード可能:PCスキルシートのサンプル(doda)

 

IFS関数とSWITCH関数の違いは「判定する対象が複数か単数のどちらか」

複数の条件を指定できる関数IFS関数というものがあります。式は「=IFS( 論理式1 , 真の場合の値1 ,論理式2 , 真の場合の値2… 」と定義され、使い方はSWITCH関数とかなり似ています。

IFS関数 : =IFS(論理式1,結果1, 論理式2,結果2, 論理式3,結果3…)
SWITCH関数 : =SWITCH(検索値,値1,結果1,値2,結果2,値3,結果3…)

どちらも「値が○○であれば○○、△△であれば△△、□□であれば□□、…」という条件指定ができます。

この2つの関数の大きな違いは、判定対象が複数指定できるか、単数に限定されるか、という点です。IFS関数においては、論理式は毎回異なる条件やセルを指定できます。一方SWITCH関数は、検索値はあくまで1つだけ。指定した値がどれに当てはまるのかということしか調べられません。

下の例を見てみると、IFS関数の論理式は毎回違うセルが条件指定されています(第一条件は「A3=“A”」、第二条件は「A4=“B”」というように)。しかし、SWITCH関数ではあくまで検索対象は「A9」セルのみ。IFS関数のほうが汎用性は高いですが、SWITCH関数のほうがシンプルなので式自体がわかりやすいということです。

関連記事:【Excel】今さら聞けない? IF関数の使い方を覚えよう! IFを含む6つの関数も一挙紹介

 

IFS関数とSWITCH関数のもうひとつの違いは「条件に幅を持たせられるかどうか」

検索する値が「ひとつか複数か」という違いに加えて、「検索する対象に幅を持たせられるか」という点も異なります。

これはどういうことかというと、IFS関数の場合は、論理式に「>(より大きい)」や「<(以下)」などの比較式を当てはめられます。一方、SWITCH関数では、あくまで検索値と完全一致する場合のみ結果が反映されます。

この2つの違いを理解しておくと、IFS関数とSWITCH関数の使い分けができるので、ぜひ覚えておきましょう。

 

【まとめ】SWITCH関数は実務で効果的な関数のひとつ

SWITCH関数は「セルの値がこうであれば、これを表示して、こうであればあれを表示したい」という時に活用できるExcel関数です。メジャーな関数ではないものの、実務で使える場面は決して少なくありません。アイディア次第では普段の仕事を大幅に効率化してくれる可能性を秘めています。

今回ご紹介した活用事例を含めて、身の回りで使える場面を探してみるといいかもしれません。

 

【参考記事】
Excel(エクセル)記事まとめ
覚えておけば残業知らず!Excel時短記事まとめ
見づらい資料からサヨナラ!Excel資料作成記事まとめ
覚えて仕事を効率化!Excel関数記事まとめ
PowerPoint(パワーポイント)記事まとめ

page top