Excel (えくせる) で条件分岐を行う一般的な方法は IF 関数を使用することですが、条件が多くなると複雑に入り組んでしてしまいます。IFS 関数を使用すると簡潔に記述でき見やすく書くことができます。
IF 関数と IFS 関数
条件
ここでは、以下の条件を IF 関数と IFS 関数での記述例を記載します:
- 「90」点以上は「優」とする
- 「80」点以上は「良」とする
- 「60」点以上は「可」とする
- 「それ以外」は「不可」とする
IF 関数で記述する例
前述した条件を IF 関数で書くと、以下のようになります:
=IF(C8>=90,"優",IF(C8>=80,"良",IF(C8>=60,"可","不可")))
上の数式を見やすくすると以下のようになります:
=IF(C8>=90,"優",
IF(C8>=80,"良",
IF(C8>=60,"可","不可")))
見やすくすると幾分わかりやすくなりますが、Excel の数式入力欄は使いやすいとは言えず、最後のカッコの数も間違いやすくなります。
IFS 関数で記述する例
前述した条件を IFS 関数で書くと、以下のようになります:
=IFS(C8>=90,"優",C8>=80,"良",C8>=60,"可",TRUE,"不可")
上の数式を見やすくすると以下のようになります:
=IFS(
C8>=90,"優",
C8>=80,"良",
C8>=60,"可",
TRUE,"不可")
得られる結果は同じですが、IF 関数で何度も記述される「IF(」と対応する「)」が不要になります。IFS 関数は、最初と最後をカッコで囲めばよいため、カッコの数で悩むこともなくなるほか、可読性も向上しますので、IF 関数を使用した場合に比べて、後から条件を調整する事も容易になります。
IF 関数と IFS 関数
この例で IFS 関数を使用する際のポイントとしては、最後に true を記述するところに注意します。最初の方に書かれた条件から評価され、合致しない場合は次の条件と順番に評価されます。true は常に合致しますので、前方に書かれた条件全てに合致しなかった場合に真となります。
IFS 関数は常に「論理式, 論理式が真の時」のセットで記述しなければならず、最後にどの条件にも合致しない場合のデフォルト値のみを最後に記述する事はできません。IF 関数のように「論理式, 論理式が真の時, 論理式が真でないとき」のように記述することはできません。
IF 関数で記述できる例:
IF(C8>=60,"可","不可")
IFS 関数ではエラーとなる例:
IFS(C8>=60,"可","不可")
IFS 関数で動作する例:
IFS(C8>=60,"可",TRUE,"不可")
参考
- IF 関数 – Office サポート
https://support.office.com/ja-jp/article/69aed7c9-4e8a-4755-a9bc-aa8bbff73be2 - IF 関数 – 入れ子になった式と問題の回避 – Office サポート
https://support.office.com/ja-jp/article/0b22ff44-f149-44ba-aeb5-4ef99da241c8 - IFS 関数 – Office サポート
https://support.office.com/ja-jp/article/36329a26-37b2-467c-972b-4a39bd951d45
数式の入力補助機能
関数の入力補助機能を使用すると、より便利に数式を組み立てることができます。数式によっては、結果の確認をしながら数式を組み立てることができます。
注意
- 本操作例は、Windows 10 (Ver.1809) にインストールされた Microsoft Office 365 に含まれる Excel (Ver.1902) のものです
- 2020 年 4 月以降 Office 365 は Microsoft 365 になりました
スポンサードリンク