【エクセル】IFS 関数の使い方は? 複数条件の設定方法を教えます

ecoslymeです。

エクセルを使用しているとIF関数は使う機会が多いかと思います。

ですが、IFS関数はご存知でしょうか?

 

IF関数よりも実はすごい便利な関数なんです。

条件が分岐してしまうような場合に特に頭を悩ませることなく、単純な式で表現することができます。

 

複数条件設定や、点数別の階層による評価(A、B、C、、、)などの設定設定が可能です。

 

常にIF関数でエクセルを作成している人に対してこのIFS関数を教えてあげるととても喜びますので、是非教えてあげて下さい。

早速このIFS関数について説明させて頂きます。

 

 

元データと結果

もしくは、

 

IFS 関数の使い方

試験を行った場合に、各人の合否自動的に出てくるような設定を考えます。

この時、以下の条件の人がいると想定します。

 

  • 欠席の連絡をしている人
  • 何も連絡をしてきていない人

 

共に欠席扱いとします。

 

点数は60点以上合格とします。

それでは、IFS関数を説明していきます。

 

IFS 関数の設定方法

D2セルに「 =IFS(B2=””,””,B2=”欠席”,”欠席”,C2<=60,”不合格”,C2>60,”合格”) 」と入力します。

 

長くてわかりづらいので、8つのブロックの意味を説明します。

8つのブロックは、2組×4ブロックとなります。

論理式値が真の値の場合」の組み合わせが4つあるということになります。

 

文字は” “ でくくるのを忘れないで下さい。横にすると見づらいので、縦に記載します。

=IFS
( B2=”” 論理式1
  • 条件式1つ目を入力
, ””値が真の値の場合1
  • 受講者がいなければ”欠席”と入力
, B2=”欠席”論理式2
  • 条件式2つ目を入力
, ”欠席”値が真の値の場合2
  • 受講者が欠席であれば”欠席”と入力
, C2<=60論理式3
  • 条件式3つ目を入力
, ”不合格”値が真の値の場合3
  • 受講者がいて、点数が60点以下であれば”不合格”と入力
, C2>60論理式4
  • 条件式4つ目を入力
, ”合格” )値が真の値の場合4
  • 受講者がいて、点数が60点より大きければ”合格”と入力

 

見ての通り、上の条件式から順にフローが流れていく構造となっています。

 

1番目と2番目のブロックでは、最初の条件式を入力します。

受講者の名前が無ければ、”欠席“とします。

 

3番目と4番目のブロッックでは、2つ目の条件式を入力します。

受講者が欠席であれば、”欠席“とします。

 

5番目と6番目のブロッックでは、3つ目の条件式を入力します。
受講者がいて(上の2つのフローがFalseである)点数が60点以下であれば、”不合格“とします。

 

7番目と8番目のブロッックでは、4つ目の条件式を入力します。
受講者がいて(上の2つのフローがFalseである)点数が60点より大きければ、”合格“とします。

 

この問題では、「C2が60より大きい場合」と条件を設定しています。

ちなみに、「C2が60以上の場合」などの条件は以下のようになります。

” “の場所に注意してください。

 

設定したい値条件式
C2が60より大きい場合C2 > 60
C2が60以上C2 >= 60
C2が60未満C2 < 60
C2が60以下C2 <= 60

 

この数式を下の行にコピペします。

この数式だけで、求めている結果が一発で全て表示されました。

 

IFS関数でOR条件を設定する方法

IFS関数でもIF関数同様、OR条件AND条件を設定することも可能です。

 

上の式で、受講者が空欄もしくは欠席の場合”欠席“とする、という設定にしてみましょう。

 

D2セルに以下の数式を入力します。

「 =IFS(OR(B2=””,B2=”欠席”),”欠席”,C2<=60,”不合格”,C2>60,”合格”) 」

前半のブロックをOR条件で表現することができました。

 

AND条件も同様にIFS関数の中に設定することができますので、是非試してみて下さい。

 

IFS関数で点数別の評価を設定する場合

何点以上であれば評価はA、B、C、、、というように、点数別に評価を設定することもできます。

 

D2セルに以下の数式を入力します。

「 =IFS(C2>=80,”A”,C2>=66,”B”,C2>=51,”C”,C2>=1,”D”,C2=””,”欠席”)  」

 

ポイントとしては、点数が高い順に記載することです。

また、一番最後の点数はC2<=50とするのではなく、C2>=1とする方が、空白が欠席と設定するのに都合が良いです。

 

こちらの方が結構使う場面が多いでしょうか。

 

IF関数で表現した場合

参考に、IF関数で表現した場合の数式をご紹介します。

 

IF関数で表現した場合の数式)

=IF(OR(B2=””,B2=”欠席”),”欠席”,IF(C2>60,”合格”,”不合格”))

 

なお、以下の記事でIF関数で表現した場合の数式について解説していますので、上の式の意味が分からない方は以下の記事をご覧下さい。

関連記事

ecoslymeです。エクセルを使用していると必ずと言ってもいいほど使用する、このIF関数。その便利な使い方について、実際に仕事の中で使えるような形でご紹介させて頂ければと思います。 エクセルの中で[…]

 

この場合、少しだけ表現方法が変わりました。

どちらが良いかはお好みですが、IFS関数であれば更に条件式が増えた場合に簡単に応用を効かせることができます

 

最後に

いかがでしょうか?

IF関数で表現した場合でももちろん表現はできますが、IFS関数であればフロー順に数式を書いていくことができるので、こちらの方が分かりやすいと感じた人も多いのではないでしょうか。

 

今までIF関数しか使っていない人は、この機会にIFS関数の使い方も取得してみてはいかがでしょうか。

 

日々の仕事の効率化には、便利な新しい知識を得ていくということも重要です。

やり慣れた方法以外でも便利な方法はないかと日々試行錯誤していき、無駄な業務作業時間をどんどん削減していきましょう。