【エクセル時短】は「少しでも早く仕事を終わらせたい!」というビジネスパーソンのみなさんに、Excelの作業効率をアップするワザをお届けする連載です。毎週木曜日更新。
注目・最新の記事一覧

Office 365だけで使える新しい関数

注目の新機能を紹介している「Excel 2019特集」。【エクセル時短】第97回では、「SWITCH(スイッチ)関数」を取り上げたいと思います。

SWITCH関数は、Excel 2019とOffice 365版のExcelで使える新関数です。ここではSWITCH関数について解説するとともに、旧バージョンのExcelも考慮した使い方も見ていきましょう。

複数条件の判定に使える

複数の値を検索し、それに一致した値に対応する結果を表示する。それがSWITCH関数の機能で、ひと言でいえば「条件分岐」のための関数です。

条件分岐と聞くとIF関数を思い浮かべると思いますが、ネストする必要がないぶん、SWITCH関数のほうが便利です。構文は以下のようになります。

SWITCH (検索値, 値1, 結果1, 値2, 結果2, ..., 値126, 結果126, 既定の結果)

引数[検索値]には検索する値、つまり条件判定の対象とする値を指定します。引数[]には判定する値、引数[結果]には[]に一致したときに表示する値を指定します。引数[既定の結果]には、どの[]にも一致しなかったときに表示する値を指定します。

構文を見るとわかるように、[]と[結果]は最大126個の組み合わせを指定できますが、実際には3〜4個を判定することが多いでしょう。ここではチケットの区分によって料金を判定する例で解説します。

1SWITCH関数を入力する

【エクセル時短】条件分岐に使える新関数「SWITCH」とは? IF、VLOOKUPでの記述方法も理解する

セルA7〜B10には、あらかじめ料金表が設定してあり、セルA3でチケットの区分を選択できるようになっています。セルB3には、以下の数式を入力しましょう。

=SWITCH(A3,A7,B7,A8,B8,A9,B9,A10,B10,"要確認")

これは『セルA3の値が、セルA7と一致すればセルB7の値、セルA8と一致すればセルB8の値、セルA9と一致すればセルB9の値、セルA10と一致すればセルB10の値、それ以外なら「要確認」と表示する』という意味になります。

2SWITCH関数の結果が表示された

【エクセル時短】条件分岐に使える新関数「SWITCH」とは? IF、VLOOKUPでの記述方法も理解する

SWITCH関数の結果が表示されました。セルA3の値は「一般」なので、セルB3には「1,800」と表示されました。

3ほかの値を指定する

【エクセル時短】条件分岐に使える新関数「SWITCH」とは? IF、VLOOKUPでの記述方法も理解する

セルA3の値を切り替えて結果を確認してみましょう。例えば「子ども」に変更すると......

【エクセル時短】条件分岐に使える新関数「SWITCH」とは? IF、VLOOKUPでの記述方法も理解する

セルB3には「1,000」と表示されました。SWITCH関数が意図通りに働いています。

【エクセル時短】条件分岐に使える新関数「SWITCH」とは? IF、VLOOKUPでの記述方法も理解する

今度はセルA7〜A10にない値「団体」を指定しました。セルB3には「要確認」と表示されることがわかります。

旧バージョンではIFとVLOOKUPで対処

ファイルを共有する相手のExcelのバージョンが不明な場合、SWITCH関数は使うべきではありません。SWITCH関数の結果が「#NAME?」エラーとなってしまいます。

【エクセル時短】条件分岐に使える新関数「SWITCH」とは? IF、VLOOKUPでの記述方法も理解する

関数式が「=_xlfn.SWITCH〜」に変換され、「#NAME?」エラーが表示されます。

その場合は、SWITCH関数をIF関数とVLOOKUP関数で書き換えます。具体例を見てみましょう。

【エクセル時短】条件分岐に使える新関数「SWITCH」とは? IF、VLOOKUPでの記述方法も理解する

前述のSWITCH関数をIF関数とVLOOKUP関数で書き換えるには、以下の数式を入力します。SWITCH関数と同じ結果が表示されるはずです。

IF関数で書き換えた数式
=IF(A3=A7,B7,IF(A3=A8,B8,IF(A3=A9,B9,IF(A3=A10,B10,"要確認"))))
IF関数とVLOOKUP関数で書き換えた数式
=IF(VLOOKUP(A3,A6:B10,2,FALSE),VLOOKUP(A3,A6:B10,2,FALSE),"要確認")

以上、新関数「SWITCH」の使い方と、IF関数やVLOOKUP関数で書き換える方法を紹介しました。

複数条件を判定するため引数は多くなりますが、SWITCH関数はIF関数やVLOOKUP関数に比べ、記述方法が簡略化されていることがわかると思います。Office 365版のExcelを使っている人は、まずは新関数に慣れておいてはいかがでしょうか?

関連まとめ記事