関数IFSは、データをいくつかの分類にグループ分けしたいとき、もしくは条件に応じて処理を変化させたいときに活用できる関数だ。関数IFを「複数条件に対応させたもの」と考えることもできるだろう。便利な関数ではあるが「偽の場合」の処理をどう指定するかなど、使い方に若干のコツが必要となる。その注意点などを紹介していこう。
関数IFSの基本的な使い方
関数IFSはExcel 2019/2021とMicrosoft 365(旧Office 365)で使用できる関数で、「関数IFを複数条件に対応させたもの」と捉えることができる。特に使い方の難しい関数ではないが、引数が多くなるため、記述ミスを犯しやすいのが難点といえる。また、「条件に合致しない場合」(偽の場合)を指定するときにも若干のテクニックが必要となる。
ということで、今回は関数IFSの「基本的な使い方」と「条件を指定するときの注意点」について紹介していこう。
今回は、体脂肪率の測定結果を「低/標準/高」の3つにグループ分けする場合を例に話を進めていこう。体脂肪率の判断基準は諸説あるが、ここでは以下の基準に従ってデータを分類していくことにする。
【男性の体脂肪率】 低:15%未満 標準:15%以上、25%未満 高:25%以上
このグループ分けを関数IFSで実現してみよう。関数IFSの書式は以下のようになっており、「条件」と「その条件を満たすときの処理」を1組にして、2個ずつ引数を指定していくのが基本となる。
◆関数IFSの書式 =IFS(条件1, 処理1, 条件2, 処理2, 条件3, 処理3, …)
具体的な記述例を紹介していこう。まずは、体脂肪率が「15未満」のときに「低」の文字を表示する処理だ。これを関数IFSで記述すると、以下の図のようになる。
続いて、体脂肪率が「15以上かつ25未満」のときに「標準」と表示する処理を記述する。この条件を文面通りに記述すると「AND(D3>=15,D3<25)」となるが、すでに「15未満」のデータは「1番目の条件」(D3<15)で処理されているため、「15以上」の条件は省略できる。よって、以下の図のように引数を記述すればよい。
最後に、体脂肪率が「25以上」のときに「高」と表示する処理を記述し、「カッコ閉じる」を入力すると、関数IFSの入力が完了する。
今回の例では、体脂肪率(D3セル)は16.8なので、
1番目の条件(15未満)…・合致しない(FALSE) 2番目の条件(25未満)…・合致する(TRUE)
となり、「標準」の文字が表示されることになる。
上図に示した例の場合、すでに「2番目の条件」に合致しているため、「3番目以降の条件と処理」は無視される。このように、関数IFSは「前に記述されている条件」から順番に検証作業を進めていき、条件に合致した処理を実行すると、それ以降の条件・処理を無視する仕組みになっている。
あとは、この関数IFSをオートフィルでコピーするだけだ。さらに「高」と「低」を強調表示する「条件付き書式」を指定すると、以下の図のような結果を得られる。
このように、条件に応じてデータを「グループ分け」したい場合などに関数IFSが活用できる。もちろん、各条件の処理に数式を記述して計算方法を条件分岐させることも可能だ。これが関数IFSの基本的な使い方となる。