いきなり答える備忘録

Google Workspace・Microsoft 365・LibreOfficeなどに関するメモ

(Excel)SWITCH関数で大小比較をする

 SWITCH関数では基本的に第1引数の式と第2引数以降の値が一致するかどうかをチェックしていきますが、実は不等号を用いた比較も可能です。
 ただし結果的にIFS関数と大して変わらない式になるため実用性は薄いです。

  • SWITCH関数の第1引数を「TRUE」とし、第2(,4,6…)引数に不等号を含む式を記せば大小比較が可能となります。
  • しかし式は毎回「C3>=80」のように記す必要がある(SUMIF関数のように左辺を省略できない)ためIFS関数とほぼ変わらないものになります。

手順

 次の画像ではD列にSWITCH関数を用いた式を入力し、C列の点数に応じたランク付けをしています。

 D3セル(下方にコピー)

=SWITCH(TRUE,C3>=80,"A",C3>=70,"B",C3>=60,"C","D")

 SWITCH関数の場合、基本的に比較対象となる偶数番目の引数として文字列や数値を1つ1つ列挙していきますが、逆転の発想で第1引数を「TRUE」とし、偶数番目の引数を式としています。これにより最初にTRUEと評価される式に対応する値が返される、というわけです。
 しかし対象セルを毎回参照する必要が生じます。また、SWITCH関数のメリットとして「それ以外」かどうか判定するための引数(式)を用意しなくていいということが挙げられるものの、第1引数にTRUEを記しているので結局IFSでやっているのとほぼ変わりません。
 ちなみに上記の式をIFS関数に直すと次のようになります。

=IFS(C3>=80,"A",C3>=70,"B",C3>=60,"C",TRUE,"D")