0Pricing
Excel Formulas Academy · レッスン

SWITCHでケースを選ぶ

SWITCHを使い、入力値を複数の結果のいずれかに対応付けます。

「SWITCHでケースを選ぶ」はCoddyKit上の無料Excel Formulas Academyレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはExcel Formulas Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Excel Formulas Academyコースには全4レッスンが含まれています。

SWITCH がある理由

1つの値を完全一致する候補のリストと比較する場合、ネストした IF では同じ処理の繰り返しになりがちです。同じセル参照を何度も入力することになります。

SWITCH 関数を使えば、この問題を解決できます。値を一度だけ指定し、それぞれの候補と返す結果を並べます。1つの数式の中に、すっきりした参照テーブルを記述したように読めます。

SWITCH の構文

構造は次のとおりです:SWITCH(expression, value1, result1, value2, result2, ..., default)。

  • expression は評価する対象で、通常はセルです。
  • 次に、候補となる各値と、その結果を組み合わせて指定します。
  • 最後に省略可能なデフォルトを指定すると、どの候補にも一致しなかった場合を処理できます。

値はペアで指定し、最後にデフォルトだけを単独で置くこともできます。

=SWITCH(A2, "N", "North", "S", "South", "Unknown")

最初の実例

セル A2 に1〜7の日付番号が入り、曜日名を表示するとします。SWITCH で各番号をラベルに対応付けます。

SWITCH は完全一致で expression と各値を比較するため、1に一致するのは1だけで、「1に近い値」では一致しません。

=SWITCH(A2,1,"Mon",2,"Tue",3,"Wed",4,"Thu",5,"Fri",6,"Sat",7,"Sun")

デフォルトの追加

セル A2 に、リストにない値である8や入力ミスが入っていたらどうなるでしょうか。デフォルトを指定しないと、SWITCH は #N/A エラーを返します。

最後に、前に対応する値を置かない引数を1つ追加します。SWITCH は、最後に単独で置かれた引数を、どの値にも一致しなかった場合に使うデフォルトとして扱います。

=SWITCH(A2,1,"Mon",2,"Tue",3,"Wed","Invalid day")

SWITCH は完全一致で比較する

最も重要なルールは、SWITCH が完全一致だけを確認することです。「より大きい」や「範囲内」といった比較はできません。

そのため、SWITCH はコード、ID、ステータス、カテゴリ名に適しています。一方、点数の範囲で成績を判定する用途には適していません。範囲を扱うには、ネストした IF、または比較条件を使う IFS が必要です。

=SWITCH(B2,"A","Approved","P","Pending","R","Rejected","Review")

SWITCH とネストした IF の比較

同じロジックを2通りで比較してみましょう。ネストした IF では A2 を3回繰り返します。

=IF(A2="N","North",IF(A2="S","South",IF(A2="E","East","West")))

SWITCH では A2 を1回だけ指定し、後はすっきりしたペアが続きます。括弧も繰り返しも少なく、後から読んだり編集したりするのがはるかに簡単です。

=SWITCH(A2,"N","North","S","South","E","East","West")

数値や数式を返す

IF と同じように、SWITCH の結果にはテキストラベルだけでなく、数値や計算式も指定できます。

ここでは、配送コードによって定額料金を決めます。コードが STD なら5、EXP なら15を返し、それ以外の場合はデフォルト料金の25になります。

=SWITCH(C2,"STD",5,"EXP",15,25)

TRUE を使う巧妙な方法

実は、SWITCH で範囲も扱える方法があります。expression に TRUE を指定し、各 value に完全な比較式を指定します。SWITCH は、TRUE と一致した最初の比較式の結果を返します。

これにより、SWITCH のすっきりしたレイアウトを保ちながら、ネストした IF の範囲判定を再現できます。比較式は高い値から低い値の順に並べてください。

=SWITCH(TRUE, A2>=90,"A", A2>=80,"B", A2>=70,"C", "F")

さらに詳しい例

A2 のステータスコードを、わかりやすいメッセージと次の対応に変換するとします。4つのコードを対応付け、安全のためのデフォルトも指定します。

  • 1 は「新規注文」を意味します
  • 2 は「発送済み」を意味します
  • 3 は「配達済み」を意味します
  • 4 は「キャンセル済み」を意味します
  • それ以外は「記録を確認」を意味します
=SWITCH(A2,1,"New order",2,"Shipped",3,"Delivered",4,"Cancelled","Check record")

利用可能なバージョン

SWITCH は Excel 2019、Excel for Microsoft 365、Google Sheets で利用できます。Excel 2013 以前のような非常に古いバージョンにはありません。

古いバージョンでブックを開くと、SWITCH が #NAME? と表示されることがあります。その場合は、どのバージョンでも使えるネストした IF に切り替えてください。

SWITCH のベストプラクティス

次の点を覚えておくと、SWITCH を最大限に活用できます。

  • コード、ステータス、カテゴリなど、完全一致に使います。
  • #N/A の予期しないエラーを避けるため、必ずデフォルトを追加します。
  • 値と結果のペアをそろえて配置し、確認しやすくします。
  • 範囲の判定には SWITCH(TRUE, ...) の方法を使うか、IFS を使います。

クイックチェック

SWITCH が値をどのように比較するかについて理解度を確認します。

まとめ:SWITCH でケースを選ぶ

SWITCH を使って、1つの値を複数の結果に対応付ける方法を学びました。重要な点は次のとおりです。

  • 構文は SWITCH(expression, value1, result1, ..., default) です。
  • 完全一致で判定するため、コードやステータスに適しています。
  • #N/A を避けるため、必ずデフォルトを指定します。
  • 範囲の判定が必要な場合は、SWITCH(TRUE, comparison, result, ...) を使います。
=SWITCH(A2,"N","North","S","South","E","East","West")

よくある質問

「SWITCHでケースを選ぶ」レッスンは無料ですか?

はい。「SWITCHでケースを選ぶ」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Excel Formulas Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Excel Formulas Academyコースには全4レッスンが含まれています。

「SWITCHでケースを選ぶ」で何を学びますか?

SWITCHを使い、入力値を複数の結果のいずれかに対応付けます。 ブラウザで直接実行するハンズオンコードでExcel Formulas Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Excel Formulas Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのExcel Formulas Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「SWITCHでケースを選ぶ」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このExcel Formulas Academyレッスンでコードを書いて実行できますか?

はい。すべてのExcel Formulas Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. 複数の結果に対応するIFのネスト
  2. SWITCHでケースを選ぶ
  3. CHOOSEで項目を選ぶ
  4. 複雑なロジックを読みやすく保つ
← Excel Formulas Academyに戻る