Excel(エクセル)で、一致した値に応じて分岐させる|SWITCH関数の使い方

スポンサーリンク
スポンサーリンク
スポンサーリンク

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文というのがあるにゃ