目次
この記事では、ExcelのSWITCH関数を紹介し、その構文を説明し、ExcelでネストされたIFの記述を簡素化する方法を説明するためにいくつかの使用例を提供します。
もし、あなたが今までネストされたIF式を取得しようとして、あまりにも多くの時間を費やしているなら、ExcelでリリースされたばかりのSWITCH関数を使用することを好むでしょう。 これは、複雑なネストされたIFが必要な状況で本当の時間節約になります。 以前はVBAでのみ利用可能でしたが、最近SWITCHはExcel 2016, Excel Online and Mobile, Androidタブレットと電話用のExcelで機能として追加されています。
注)現在、SWITCH機能は、Office 365のサブスクリプションに含まれるExcel for Office 365、Excel Online、Excel 2019、Excel 2016で利用可能です。
エクセルSWITCH - 構文
SWITCH関数は、式と値のリストを比較し、最初にマッチした値に従って結果を返します。 マッチが見つからなかった場合、オプションでデフォルト値を返すことが可能です。
SWITCH機能の構成は以下の通りです。
SWITCH(スイッチ) 顔 , 値1 , 結果1 , [デフォルトまたは値2, 結果2],...[デフォルトまたは値3, 結果3])4つの引数を持ち、そのうちの1つはオプションです。
- 表現方法 は、value1...value126と比較される必要な引数である。
- ValueN は式と比較される値である。
- 結果N は,対応するvalueN の引数が式にマッチした場合に返される値であり,valueN の引数毎に指定する必要がある。
- デフォルト は,valueN式にマッチしない場合に返される値である。 この引数は,対応するresultN式を持たず,関数の最後の引数でなければならない。
関数の引数は254個に制限されているので、値と結果の引数は126組まで使用することができます。
ExcelのSWITCH関数とネストされたIFの比較と使用例
ExcelのSWITCH関数は、IFと同様に一連の条件を指定するのに役立ちます。 ただし、この関数では、いくつかの条件文ではなく、式と一連の値および結果を定義します。 SWITCH関数の良いところは、入れ子になったIF式で時々発生する、式を何度も繰り返す必要がないことです。
IFのネストは何でもOKですが、評価条件の数によってネストしたIFを構築することが不合理な場合があります。
この点を実証するために、以下のユースケースを見てみましょう。
例えば、いくつかの略語があり、それらの正式名称を返したいとします。
- デマンド・レスポンス - デュプリケートリムーバー
- エムティーダブリュー - テーブルのマージウィザード
- シーアール - コンバイン・ロー
この作業には、Excel 2016のSWITCH関数がかなりわかりやすいでしょう。
IF関数では、式を繰り返す必要があるため、入力に時間がかかり、見た目も長くなってしまいます。
同じことは、次のレーティングシステムの例でも見ることができ、ExcelのSWITCH関数はよりコンパクトに見える。
SWITCHと他の関数の組み合わせを見てみましょう。 例えば、複数の日付があり、それが今日なのか明日なのか昨日なのかを一目で確認したい場合、現在の日付の通し番号を返すTODAY関数と、二つの日付の間の日数を返すDAYSを追加することになります。
SWITCHがこのタスクに完璧に対応することがおわかりいただけると思います。
IF関数では、変換に入れ子が必要で複雑になるため、間違える可能性が高くなります。
ExcelのSWITCHは、あまり使われておらず、過小評価されているようですが、条件分岐のロジックを構築できる、本当に便利な機能です。