おつかれさまです!
エクセルでデータを管理する時「IF関数」を複数使用して条件分岐を行ってしまうことで、数式が複雑になり困っていませんか?
そんな時に便利なのが「IFS関数」です。
この記事では、エクセルを使って「IFS関数」を利用する方法を詳しくご紹介します。
基本的な使い方から応用的なテクニックまで、初心者でもすぐに実践できる内容です。
ぜひ最後までお読みください。
【 この記事の概要 】
よく使う度 | |
難しさ | |
覚えておくと安心度 |
この記事を見てできるようになること
この記事を読めば、以下のことができるようになります。
IFS関数の基本
まずは、「IFS関数」について説明します。
IFS関数は何ができる?
IFS関数は、複数の条件を用いる際に、関数が煩雑にならず簡単に条件分岐ができる便利なエクセル関数です。
IF関数では、条件が増えるたびにネスト(入れ子)構造を使う必要があり、複雑で可読性が低くなります。
しかし、IFS関数を使えば、シンプルに記述でき、複数の条件を直感的に扱うことができます。

IFS関数の構成

引数について
- 論理式1 (必須)
- 最初に評価する条件を指定します。
- 値1 (必須)
- 論理式1がTRUEの場合に返す値を指定します。
- 論理式2 (任意)
- 次に評価する条件を指定します。
※論理式1の条件が一致しなかった場合に、論理式2の処理を実行します。
- 次に評価する条件を指定します。
- 値2 (任意)
- 論理式2がTRUEの場合に返す値を指定します。
- 論理式3(任意)以降
- 論理式2と同じように、記述していきます。
最大127まで指定可能です。
- 論理式2と同じように、記述していきます。
より詳しい情報は、Microsoft公式 – IFS関数についてを参照してみてください。
IFS関数の使用例
それでは、IFS関数の使用例を1つ紹介します。
使用例1: 基本的なIFS関数
IFS関数を使用して、複数の条件分岐を行う方法を紹介します。
例えば、このようなエクセルデータがあるとします。

B列の点数を次のように条件分岐したい場合を考えます
- 80点以上であった場合、「優」
- 60点以上であった場合、「良」
- 40点以上であった場合、「可」
- それ以外の場合、「不可」
このような条件分岐を行う場合、まずC2セルに次のように記述します。
=IFS($B2>=80,"優",$B2>=60,"良",$B2>=40,"可",$B2<40,"不可")
引数の解説
この例では、引数を下記の通り設定しています。
- 論理式1 ⇒ $B2>=80
- B2の値が80以上かどうかを評価します。
※ この場合、オートフィルを使用して他のセルにコピーするため、
行方向には相対参照・列方向には絶対参照($記号)を使用しています。
これにより、列が固定され、コピー先でも正しく評価されます。
- B2の値が80以上かどうかを評価します。
- 値1 ⇒ “優”
- 条件が80点以上の場合(真の場合)に「優」と表示します。
- 論理式2 ⇒ $B2>=60
- B2の値が60以上かどうかを評価します。
論理式1で指定した条件(80以上)を満たさなかった場合、論理式2を処理します。
- B2の値が60以上かどうかを評価します。
- 値2 ⇒ “良”
- 条件が60点以上の場合(真の場合)に「良」と表示します。
- 論理式3 ⇒ $B2>=40
- B2の値が40以上かどうかを評価します。
論理式2で指定した条件(60以上)を満たさなかった場合、論理式3を処理します。
- B2の値が40以上かどうかを評価します。
- 値3 ⇒ “可”
- 条件が40点以上の場合(真の場合)に「可」と表示します。
- 論理式4 ⇒ $B2<40
- B2の値が40未満かどうかを評価します。
論理式3で指定した条件(40以上)を満たさなかった場合、論理式4を処理します。
- B2の値が40未満かどうかを評価します。
- 値4 ⇒ “不可”
- 条件が40点未満の場合(偽の場合)に「不可」と表示します。
こちらが、IFS関数を使用した結果です。
C2セルに80点以上の「優」を表示させることができました。

次に、C6セルまでオートフィル機能を使用して、計算式を一括で反映させます。
C2セルの右下にカーソルを合わせて表示される「⁺」を、C6セルまでドラッグアンドドロップします。

C6セルまでドラッグアンドドロップすることで、全てのセルに計算式を反映することができました。

このように、IFS関数を使うことで、複数の条件に基づいた値を簡潔に表示することができます。
番外編: IF関数とIFS関数の比較
このように複数条件を比較したい場合は、IFS関数を使用することをお勧めします。
先ほどの使用例1を使用して、IFS関数とIF関数を比較してみましょう。
再度、IFS関数を記述します。
=IFS($B2>=80,"優",$B2>=60,"良",$B2>=40,"可",$B2<40,"不可")
こちらを、IF関数で記載すると、次のようになります。
=IF($B2>=80,"優",IF($B2>=60,"良",IF($B2>=40,"可","不可")))
このように、IF関数を複数組み合わせる(※1 ネスト)と、構文が複雑になり、可読性が低くなります。
この場合、よりシンプルに記述できる「IFS関数」を使用した方が便利です。
※1:ネストとは?
ネストとは、関数の中に別の関数を入れ込むことを指します。
複数の条件を評価する場合に便利で、例えばIF関数の中にさらにIF関数を入れることで、
条件が満たされた場合の処理をさらに細かく制御することができます。
しかし、簡単な条件分岐の場合や、条件が少ない場合には、IF関数の方が適しています。
IF関数はシンプルで使いやすく、特に単純な条件分岐には最適です。
下の記事にIF関数について記載していますので、興味がある方はご参照ください。
このようなことから、複雑な条件分岐を行う際は、IFS関数を使用することでシンプルに記述することができます。
まとめ
エクセルでの複数条件のデータ処理を行うIFS関数は、非常に多くの場面で活用できます。
基本的なIFS関数の使い方から、条件の指定方法、応用までを理解することで、業務効率を大幅に向上させましょう。
ポイントのおさらい
ポイント | 説明 |
---|---|
IFS関数の基本 | 複数の条件を用いて、簡潔に条件分岐ができる便利なエクセル関数です。 IF関数と違い、ネストを使わずにシンプルに記述できます。 |
引数の使い方 | IFS関数は、論理式とその条件が満たされた場合の値をペアで指定します。 最大127まで条件を設定可能です。 |
IF関数との比較 | IF関数は単純な条件分岐に適していますが、複数の条件を扱う場合はIFS関数を 使用することで、構文が簡潔になり、可読性が向上します。 |
さらに学ぶために
また、VBA(Visual Basic for Applications)を使用することで、IFS関数と同様の処理を自動化することも可能です。
関数からさらにステップアップしたい場合には、VBAを使用してみるのも良いかもしれません。
今回の記事で紹介したIFS関数を活用することで、残業時間の削減や業務の効率化に役立ててください。