最近では、普段の業務でExcelを触ることは少なくなったのだが、統計学の勉強で久しぶりにExcelを触っていると便利な関数に出会った。

その名もIFS関数

IFS関数は、通常のIF文で複数の条件を指定したい場合に有効な関数で、実際に使用例を見ていこう。

通常のIF文で3つの条件を指定する場合

まず、通常のIF文で以下のような3つの条件(統計値Pの有意差判定)を指定する場合、関数の書き方は次のとおりとなる。

条件出力結果
p < 0.001***
p < 0.01**
p < 0.05*
=IF(A1<0.001,"***",IF(A1<0.01,"**",IF(A1<0.05,"*","")))

IF関数を入れ子して複数条件を指定しているのだが、見た目も冗長的だし、後から関数を編集する際にどこのIF文を編集しているのかが分かりづらい。

このような問題を解決してくれるのがIFS関数だ。

IFS関数で複数条件をシンプルに指定する

IFS関数を使えば入れ子を使うことなく、先ほどと同じ条件をシンプルに書くことができる。

=IFS(A1<0.001,"***",A1<0.01,"**",A1<0.05,"*",TRUE,"")

IFS関数の引数の取り方は非常にシンプルだ。

第1引数に論理式、第2引数に論理式が真の場合の結果を指定し、複数条件を指定する場合は続けて第3・4引数に同じように論理式と結果を、第5・6引数にまた論理式と結果・・・と、一つの関数内で複数条件をまとめて指定することができるのだ。

どの条件にも当てはまらない場合(プログラミングで言うところのelse条件)は、論理式にTRUEと指定すれば良い。
今回の例の場合、はじめの3つの条件いずれにも合致しない場合は空白が返ることになる。

ちなみにIFS関数は、GoogleスプレッドシートやExcel2016以降で使うことができるが、Excel2013以前のバージョンでは使えないので、ファイルの受け渡しを頻繁におこなう場合は注意が必要だ。