【Excel】エクセルのSWITCH関数は、指定した値に応じて異なる結果を返す関数です。複数の条件を簡潔に記述できるため、評価判定やデータ分類、ステータス管理などに役立ちます。この記事では、SWITCH関数の基本構文や使い方、IF関数との違い、実務で活用できる具体例、使用時の注意点までわかりやすく解説します。
エクセル switch関数 | 基本の使い方から複数条件の指定、if関数との違いまで解説
SWITCH関数とは
SWITCH関数は、指定した式やセルの値を複数の候補と比較し、一致した値に対応する結果を返す関数です。例えば、セルに入力された数字に応じて「1:営業部」「2:総務部」「3:経理部」のように、異なる文字列を表示できます。
従来、同じ処理を複数のIF関数で記述していた場合でも、SWITCH関数を使えば数式を簡潔にまとめられます。条件ごとの結果が明確になるため、数式の読みやすさやメンテナンス性を向上させられる点もメリットです。
ただし、SWITCH関数は基本的に指定した値との一致を判定する関数です。「80点以上なら合格」のような範囲条件を直接判定する用途には、IF関数などを使用するほうが適しています。
SWITCH関数の基本構文
SWITCH関数の基本構文は、次のとおりです。
=SWITCH(式, 値1, 結果1, [値2, 結果2], ..., [既定値])
それぞれの引数の意味を理解すると、さまざまな場面で応用できます。
- 式:判定対象となる値やセルを指定します。
- 値1、値2:式と比較する候補の値を指定します。
- 結果1、結果2:それぞれの値が一致した場合に返す結果を指定します。
- 既定値:どの候補にも一致しなかった場合に返す値を指定します。省略することもできます。
例えば、A2セルに入力された数字を判定する場合、次の数式を使用できます。
=SWITCH(A2,1,"営業部",2,"総務部",3,"経理部","該当なし")
A2セルが「1」なら「営業部」、「2」なら「総務部」、「3」なら「経理部」と表示されます。それ以外の値が入力されている場合は、「該当なし」と表示されます。
SWITCH関数で複数条件を指定する方法
SWITCH関数では、複数の値と結果を組み合わせて指定できます。条件が増えても、IF関数を何重にも入れ子にする必要がないため、数式を管理しやすくなります。
例えば、商品コードに応じて商品名を表示したい場合は、次のように記述します。
=SWITCH(A2,"A001","ノート","A002","ペン","A003","ファイル","その他")
A2セルの値が「A001」なら「ノート」、「A002」なら「ペン」、「A003」なら「ファイル」と表示されます。該当するコードがない場合には「その他」が表示されます。
このように、商品コードの分類や担当者の振り分け、申請状況の表示など、あらかじめ候補が決まっているデータの処理に適しています。
なお、SWITCH関数では、指定した値を上から順番に評価し、最初に一致した結果を返します。同じ候補を複数回指定した場合は、先に記述した条件が優先されるため注意しましょう。
SWITCH関数で文字列を判定する方法
SWITCH関数は、数値だけでなく文字列の判定にも使用できます。例えば、A2セルに入力されたステータスに応じて、対応するメッセージを表示する場合は、次の数式が便利です。
=SWITCH(A2,"完了","処理済み","進行中","作業中","未着手","これから対応","状態不明")
A2セルが「完了」なら「処理済み」、「進行中」なら「作業中」、「未着手」なら「これから対応」と表示されます。どの条件にも一致しない場合は「状態不明」と表示されます。
この方法は、業務の進捗管理や問い合わせ対応、タスク一覧の整理などに活用できます。入力値と表示結果を対応させることで、一覧表の内容をわかりやすく整理できるでしょう。
ただし、文字列の表記が異なる場合は、期待した結果にならないことがあります。例えば、「進行中」と「対応中」は別の文字列として扱われるため、入力ルールを統一することが大切です。
SWITCH関数とIF関数の違い
SWITCH関数とIF関数は、どちらも条件に応じて結果を切り替えるために使用できますが、得意とする処理が異なります。
SWITCH関数は、指定した値が候補と一致するかどうかを判定する場合に適しています。一方、IF関数は、数値の大小や複数の論理条件など、柔軟な条件判定に向いています。
例えば、セルの値が「A」「B」「C」のいずれかに一致する場合は、SWITCH関数を使うと数式を簡潔に記述できます。
=SWITCH(A2,"A","合格","B","保留","C","不合格","未分類")
一方、80点以上を合格、それ未満を不合格とする場合は、IF関数を使用します。
=IF(A2>=80,"合格","不合格")
このように、決まった値との一致を判定するならSWITCH関数、比較演算子を使った条件判定ならIF関数を選ぶとよいでしょう。用途に合わせて使い分けることで、数式の可読性を高められます。
SWITCH関数を使用する際の注意点
SWITCH関数を使用する際は、いくつかのポイントを押さえておきましょう。
まず、SWITCH関数は範囲条件を直接指定するための関数ではありません。例えば、「90点以上ならA評価、70点以上ならB評価」といった判定には、IF関数やIFS関数などが適しています。
次に、既定値を指定することも重要です。既定値を省略し、どの候補にも一致しなかった場合は、Excelで「#N/A」エラーが表示されます。想定外の入力が考えられる場合は、「その他」や「該当なし」などを設定すると、表の見やすさを保ちやすくなります。
また、SWITCH関数はExcelのすべてのバージョンで利用できるわけではありません。利用しているExcelのバージョンが対応しているか、事前に確認しましょう。古いバージョンとの互換性が必要な場合は、IF関数などで代替する方法も検討できます。
さらに、条件の数が多くなる場合は、別の表に判定条件と結果をまとめ、XLOOKUP関数などで参照する方法も有効です。条件を数式の中に大量に記述するよりも、変更や追加に対応しやすくなります。
“エクセルのSWITCH関数は、指定した値に応じて結果を切り替えたいときに便利な関数です。基本構文と引数の役割を理解すれば、商品分類やステータス管理、データの振り分けなど、さまざまな業務で活用できます。複数の値との一致判定にはSWITCH関数、範囲や複雑な条件の判定にはIF関数やIFS関数を使うなど、目的に合わせて使い分けることが大切です。既定値の設定やExcelのバージョンにも注意しながら、日々の表計算業務を効率化しましょう。”