Introduction
Ver. 2019 2021 365
エクセルで値が一致した時の結果を分岐させるSWITCH関数を紹介します。
条件に応じて結果を分岐させる関数と言えばIF関数やIFS関数が有名ですが、SWITCH関数を使用した方が式がスッキリ見やすくなる場合があります。
バージョン2019以降から使用できる新しめの関数です。
SWITCH関数・・・一致した値に応じて、指定した結果を返す。どれにも一致しない場合は既定の結果を返す。
SWITCH(式 , 値1 , 結果1 , [既定または値2] , [結果2] , … )
- 式・・・参照するセルや値を指定
- 値(既定または値)・・・一致させたい値を指定
- 結果・・・「一致させたい値」に一致した際に返す値や式を指定
※最後の[既定または値]・・・それまでの式で一致する値が存在しない場合に返す値を指定
関数の説明は文字数が多くて分かり難いかもしれませんが、使ってみると簡単な関数ですよ。
IF関数よりも効率的になる場合があるにゃ
SWITCH関数の使い方
今回は、下の「提出物」の「A~E」の評価に対してのコメントを右側に表示してみます。
ちなみに、コメントの内容は以下のようにします。
- A・・・素敵すぎです
- B・・・輝いています
- C・・・普通です
- D・E・・・ピンチです
言葉にすると「Aの場合は〇〇、Bの場合は〇〇、Cの場合は〇〇、それ以外は〇〇」というように設定します。
「D」と「E」はまとめて、前の条件に当てはまっていない場合として設定します。
では、関数を入れるセルを選択して[関数の挿入]ボタンをクリック。
[関数の分類]を[論理]か[すべて表示]に切り替えて「SWITCH」を選んで[OK]をクリック。
SWITCH関数・・・一致した値に応じて、指定した結果を返す。どれにも一致しない場合は既定の結果を返す。
SWITCH(式 , 値1 , 結果1 , [既定または値2] , [結果2] , … )
- 式・・・参照するセルや値を指定
- 値(既定または値)・・・一致させたい値を指定
- 結果・・・「一致させたい値」に一致した際に返す値や式を指定
※最後の[既定または値]・・・それまでの式で一致する値が存在しない場合に返す値を指定
今回の場合は、まず下のように設定します。
[式]の場所には、判定したいセルを指定。
[値1]の場所に、その場所が「〇〇だったら」と一致させたい条件を指定します。
[結果1]の場所には一致した際の結果を指定します。
今回の場合は、「D3」が「A」と一致したら「素敵すぎです」と表示したいので、下のようになります。
文字を入力する際は必ずダブルクォーテーション「”」で囲みます。
※次の場所に移動すると自動で設定されます。
さて、続いて「B」の場合「C」の場合と続いて指定が必要ですね。
次の場所をクリックするとスライドバーが右側に表示されるので、次々と下に追加していくことができます。
- [既定または値2]・・・「B」
- [結果2]・・・「輝いています」
- [既定または値3]・・・「C」
- [結果3]・・・「普通です」
と続けます。
残り「C」と「D」ですが、これは同じ「ピンチです」と表示したいので、一つ一つ設定せずに、[既定または値4]の場所に「ピンチです」と入力します。
セットとなる[結果]の場所が何も入力されていない場合は、他の「値」と一致しない場合の既定として扱われます。
出来上がった式は下のようになります。
=SWITCH(D3,"A","素敵すぎです","B","輝いています","C","普通です","ピンチです")
[OK]を押して下にオートフィル機能を使用してコピーします。
全ての結果が表示されました。
同じ内容をIF関数で作成すると下のようになります。
=IF(D3=”A”,”素敵すぎです”,IF(D3=”B”,”輝いています”,IF(D3=”C”,”普通です”,”ピンチです”)))
SWITCH関数の方が少し見やすく式の内容が分かり易いはずです。
=SWITCH(D3,”A”,”素敵すぎです”,”B”,”輝いています”,”C”,”普通です”,”ピンチです”)
まとめ
最近登場した関数なので、過去バージョンとの互換性を考えるとIF関数を使用した方が良いこともあります。
職場や分岐内容に応じてIF関数と上手に使い分けたい関数です。
SWITCH関数は、最初から順番に処理していき、一致した結果があればその後は検索されません。
また、「既定または値〇」を省略して、該当する値が存在しなかった場合は、「#N/A」エラーが表示されます。
※関数で参照が見当たらない場合に表示されるエラー
プログラミングにもSWITCH文というのがあるにゃ