Excelで「条件によって異なる計算を行いたい」と思ったとき、まず思いつくのはIF関数かもしれません。しかし、条件が3つ以上あるとIF関数はネスト(入れ子)構造になって読みづらくなりがちです。
そこで便利なのが、Excel 2016以降で使えるIFS関数です。IFS関数を使えば、複数の条件ごとに異なる計算式を設定しやすくなり、可読性・保守性も向上します。
この記事では、IFS関数で計算式を使う方法について、構文の基本から実務に役立つ具体例、IF関数との違い、注意点まで詳しく解説します。
目次
✅ IFS関数とは?IF関数との違いを理解しよう
IFS関数は便利な関数ですが、「IF関数と何が違うのか分からないまま使っている」というケースは非常に多いです。
そのまま使い始めてしまうと、「思った通りに動かない」「条件が増えたときに修正できない」といったトラブルにつながります。
特に実務では、条件分岐が途中で増えることがほとんどです。
そのときにIF関数のまま無理にネストを増やすのか、それともIFS関数に切り替えるべきかの判断ができないと、式が一気に複雑化してしまいます。
また、「IFS関数の方が新しいから良い」と思い込んでしまうのも注意が必要です。
状況によってはIF関数の方が適しているケースもあり、正しく使い分けることが重要になります。
この違いを理解せずに進めてしまうと、後の章で紹介する計算式の活用や応用例が理解しづらくなります。
まずは、それぞれの特徴と使いどころをしっかり押さえておきましょう。
・ IFS関数の特徴
IFS関数は、「ある条件が成立したらこの計算、別の条件なら別の計算」というように、複数の条件を1つの関数で処理できる関数です。
・ IFS関数の基本構文
"=IFS(条件1, 計算式1, 条件2, 計算式2, 条件3, 計算式3, ...)"
条件1:最初に判定したい条件
計算式1:条件1がTRUEのときに返す計算式や値
条件2以降:次の条件と対応する処理
IFS関数では、最初にTRUEと判定された条件だけが実行され、以降の条件は無視されます。
実務では、計算結果を出すだけでなく、条件に応じて視覚的に分かりやすくすることも重要です。
IF関数と条件付き書式を組み合わせた活用方法については、以下の記事もあわせてご確認ください。
👉 【Excel】IF関数と数式の組み合わせで動的な書式管理を実現する方法|Excel条件付き書式の実践活用術
・ IF関数とIFS関数の違い
| 比較項目 | IF関数 | IFS関数 |
|---|---|---|
| 複数条件の処理 | ネストが必要で複雑になりがち | 条件と処理をペアで記述し、読みやすい |
| 構文の簡潔さ | 入れ子が深くなるとわかりづらい | 条件→結果を順番に並べるだけで済む |
| ELSE(それ以外) | ELSE的な書き方が可能(最後に記述) | "TRUE" を最後の条件に指定することで代用可能 |
✅ 実務でよく使う「IFS関数+計算式」のパターン別解説
ここまでで、IFS関数を使った基本的な計算パターンは理解できたと思います。
しかし実務では、単純な条件分岐だけで完結するケースはほとんどありません。
例えば、
・条件がさらに増えて5つ以上になる
・数値だけでなく文字や日付も組み合わせる
・例外パターン(エラーや空白)を考慮する
といった場面では、少しの書き方の違いが結果に大きく影響します。
また、「動く式」と「実務で使い続けられる式」はまったく別物です。
見やすさや修正しやすさを意識せずに書くと、後から条件を追加した際に式が壊れる原因になります。
このあと解説する注意点を理解しておかないと、
「なぜか計算結果が合わない」「一部のデータだけおかしい」といったトラブルにつながる可能性があります。
実務で安心して使えるIFS関数にするためにも、次の章は必ず確認しておきましょう。
・売上に応じて報酬率を変える計算方法
売上が100万円以上 → 15%
50万円以上 → 10%
それ未満 → 5%
このような条件で報酬を計算したい場合、IFS関数を使えば次のように書けます。
=IFS(A2>=1000000, A20.15, A2>=500000, A20.10, A2<500000, A2*0.05)
※A2が売上金額のセル
→ 金額に応じた自動計算が1セルで完結し、ネストなしで見やすい式になります。
実務では、条件に応じた「計算」だけでなく、「判断」を自動化する場面も非常に多くあります。
在庫管理における発注判断の自動化については、以下の記事もあわせてご確認ください。
👉 【Excel】【在庫管理】在庫数に応じて発注判断を自動化するIF関数の設定方法|ムダなく効率的な仕入れを実現
・点数に応じて評価ランクを計算式で表示する方法
80点以上 → "A"
70点以上 → "B"
60点以上 → "C"
それ未満 → "D"
=IFS(B2>=80, "A", B2>=70, "B", B2>=60, "C", TRUE, "D")
ここでは最後に "TRUE" を指定して、いずれにも該当しない場合の処理を代用しています。
実務では、点数ごとのランク付けだけでなく、最終的な合否判定まで自動化するケースが多くあります。
複数教科を組み合わせた判定方法については、以下の記事もあわせてご確認ください。
👉 【Excel】【成績処理】複数教科の合否判定をIF関数で自動化する方法(合格/再試験/不合格)
・商品のカテゴリごとに消費税を計算する方法
食品 → 8%
衣料品 → 10%
医薬品 → 非課税(税額0)
=IFS(C2="食品", B20.08, C2="衣料品", B20.10, C2="医薬品", 0)
B2:価格
C2:商品カテゴリ
→ カテゴリに応じた計算式(掛け算や定数)を組み込んだIFSの活用例です。
■ IFS関数で計算式を使うときの注意点
IFS関数は便利ですが、細かいルールを理解せずに使うと「思った通りに動かない」というトラブルが起きやすい関数でもあります。
特に、条件の順序や例外処理を意識せずに式を組んでしまうと、一見正しく見えても誤った結果を返してしまうことがあります。
実務では「一部のデータだけ結果が違う」「特定のケースでだけエラーになる」といった見つけにくい不具合が発生しやすく、原因の特定にも時間がかかります。
また、後から条件を追加・変更する場面では、最初の設計が甘いと簡単に式が崩れてしまいます。
「とりあえず動く式」ではなく、「どんなデータでも安定して動く式」を作るためには、ここから解説する注意点の理解が不可欠です。
この章を飛ばしてしまうと、せっかく作った式が業務で使えなくなる可能性もあるため、必ず確認しておきましょう。
1. 条件の順序は「上から評価される」
IFS関数は、上から順に条件をチェックし、最初にTRUEになった処理だけが実行される仕様です。
そのため、次のような順序で書くと意図通りに動作しない可能性があります。
❌ 誤った順序:
=IFS(B2>=60, "C", B2>=80, "A")
→ 常に60以上の時点で止まってしまい、80以上も「C」と判定されます。
✅ 正しい順序:
=IFS(B2>=80, "A", B2>=60, "C")
2. ELSEのような「それ以外」には TRUE を使う
IFS関数には「ELSE」のような構文はありませんが、最後の条件にTRUEを指定することで、すべての条件に当てはまらないときの処理を記述可能です。
=IFS(条件1, 計算式1, ..., TRUE, その他の計算式)
3. すべての条件がFALSEだと「#N/A」エラーになる
IFS関数では、どの条件もTRUEにならなければエラーになります。
最後に必ずTRUE条件を入れておくことで、これを防ぐことができます。
4. 数式のセル参照に注意
セルに数値が空白または文字列のとき、条件式の判定が誤動作する可能性があります。
→ ISNUMBER や IFERROR を併用して安全な判定にするのがおすすめです。
実務では、数式の正しさだけでなく「ミスにすぐ気づける設計」にしておくことが重要です。
IF関数と条件付き書式を組み合わせた見える化の方法については、以下の記事もあわせてご確認ください。
👉 【Excel】IF関数を使った条件付き書式で見やすいExcel表を作る方法|色分けで視覚的に業務効率UP!
■ よくあるIFS関数のエラーとその原因
| エラー内容 | 原因 | 解決方法 |
|---|---|---|
| #VALUE! エラー | 構文ミス(括弧やカンマの抜け) | 数式を見直して条件と値のペアが正しいか確認 |
| #N/A エラー | すべての条件がFALSE | 最後に TRUE を入れてカバーする |
| 常に同じ結果になる | 条件の順序が不適切 | より厳しい条件から順に記述 |
■ IFS関数+計算式が役立つ業務シーン例
| 活用場面 | 処理内容 |
|---|---|
| 営業インセンティブ | 売上額に応じて報酬率を自動で変更 |
| 成績評価 | 点数からランクを自動付与 |
| 経費精算 | 勘定科目ごとに税率や控除額を変更 |
| 顧客管理 | 利用状況に応じた割引率やステータスを自動設定 |
| 業務報告 | 完了状況や納期超過に応じた計算や表示を動的に切り替える |
■ まとめ:IFS関数×計算式でExcelの条件別処理をスマートに!
IFS関数は、複数の条件ごとに異なる処理を行う場合にとても便利な関数です。
特に計算式と組み合わせることで、条件に応じた金額計算・報酬判定・ランク付けなどをセル1つで実現でき、業務効率が大幅に向上します。
ポイントは以下の通り:
条件→処理をセットで順に書けるため、可読性が高い
ネスト不要で、IF関数よりシンプル
TRUEで「それ以外」の処理を簡単に記述可能
数値・文字・日付・セル参照など、柔軟に条件設定可能
IF関数では式が複雑になりすぎると感じていた方は、ぜひIFS関数を使った計算式にチャレンジしてみましょう。