経理部門の決算業務や営業管理の現場では、単一の条件だけでは解決できない複雑な判定ルールが数多く存在します。筆者の経験では、こうしたルールをExcelの数式に落とし込む際、最も多用され、かつミスが起きやすいのがIF関数の組み合わせです。業務の自動化を進める上で避けては通れない、論理的な思考と数式構築のノウハウを実務視点で整理しました。

Excel IF 複数条件 ネストを使いこなす:複雑な実務ルールを数式化する最短ルート
実務で扱うデータは「AならばB」といった単純なものばかりではありません。例えば、経費精算において「営業部かつ5万円以上の申請は部長承認、それ以外は課長承認」といった複合的なルールを判定する場合、IF関数の中に別の関数を組み込む技術が必要になります。
これを実現するのが「関数の組み合わせ」と「ネスト(入れ子)」です。Excel 2019やMicrosoft 365などのモダンな環境においても、これらの基本構造を理解しておくことは、メンテナンス性の高いシートを作成するための必須条件といえます。筆者が社内研修で講師を務める際、受講者が最も「実務が変わった」と実感するのも、この複数条件の処理をマスターした瞬間です。

AND関数:すべての条件を満たす「かつ」の判定
複数の条件をすべて満たしているかを確認するには、AND関数をIF関数の「論理式」部分に記述します。
=IF(AND(条件1, 条件2), 真の場合, 偽の場合)
例えば、営業部の田中さんの評価において「売上目標を100%以上達成」かつ「新規獲得数が3件以上」の場合にのみ「インセンティブ対象」と表示させるケースです。
OR関数:いずれかの条件を満たす「または」の判定
複数の条件のうち、どれか一つでも満たしていれば良い場合はOR関数を使います。
=IF(OR(条件1, 条件2), 真の場合, 偽の場合)
在庫管理において、商品型番「A-001」の在庫が「安全在庫を下回った場合」または「最終発注日から30日が経過した場合」に「要発注」と出すといった運用に最適です。
論理式を階層化するネスト構造の組み立て方
条件が3つ、4つと増えていく場合、IF関数の中にさらにIF関数を入れる「ネスト」という手法を使います。実務でよく見かけるのは、売上金額に応じてランクを分けるといった多段階評価のシーンです。
ネストの基本構造と処理の優先順位
IF関数のネストは、左から順番に判定が行われます。最初の条件に合致すればその結果が返され、合致しなかった場合に次のIF関数へと処理が移ります。
=IF(条件1, 結果1, IF(条件2, 結果2, 結果3))
この構造を理解せずに数式を組むと、本来「結果1」になるべきデータが「結果2」の条件にも合致してしまい、意図しない判定が下されることがあります。

ポイント: ネストを組む際は、条件の厳しいもの、あるいは数値の大きい(小さい)順に記述するのが鉄則です。この順番を間違えると、すべてのデータが最初の緩い条件に吸い込まれてしまうという、初心者がつまずきやすいポイントに直面します。
可読性を高めるための記述ルール
筆者が実務で複雑なネストを組む際は、数式バーの中で「Alt + Enter」を押して改行を加えるようにしています。
=IF(B2>=1000000, "S",
IF(B2>=500000, "A",
IF(B2>=100000, "B", "C")))
このように階層ごとに改行を入れることで、括弧の閉じ忘れや条件の重複を一目で確認できるようになります。これはチームでシートを共有する際の最低限のマナーとも言えるテクニックです。と組み合わせることで、より強固な数式になります。
実務現場での活用例:経費精算と人事評価の自動判定
具体的なビジネスシナリオを用いて、複数条件とネストの組み合わせ方を詳しく見ていきましょう。

経費精算システムにおける承認フローの自動化
以下のルールで承認者を自動判定する数式を作成します。
- 部署が「営業部」で、かつ金額が「10万円以上」:本部長承認
- 部署が「営業部」で、かつ金額が「10万円未満」:部長承認
- それ以外の部署:課長承認
数式例:
=IF(AND(B2="営業部", C2>=100000), "本部長承認", IF(B2="営業部", "部長承認", "課長承認"))
経理の現場では、こうした判定を手作業で行うと必ずミスが発生します。数式で自動化することで、チェック業務の負担を大幅に軽減できます。
人事評価:複数指標による総合ランク付け
営業部員の佐藤さんや鈴木さんの評価を「売上達成率」と「残業時間」の2軸で判定します。
- 達成率120%以上 かつ 残業30時間以内:特選評価
- 達成率100%以上 または 残業20時間以内:優良評価
- それ以外:通常評価
数式例:
=IF(AND(D2>=120%, E2<=30), "特選評価", IF(OR(D2>=100%, E2<=20), "優良評価", "通常評価"))
研修で教えていると、「ANDとORを同じ数式内でどう使い分ければいいのか」という質問をよく受けます。まずは日本語で「かつ」なのか「または」なのかを整理してから数式に着手するのがコツです。を併用して評価基準テーブルを参照する方法も有効です。
トラブルシューティング:やりがちなミスと回避策
複雑な数式を組むほど、エラーや意図しない結果に悩まされる可能性が高まります。実務でよく遭遇するトラブルとその対策をまとめました。

括弧の対応関係と入力ミス
ネストが深くなると、最後に閉じる括弧「)」の数が足りなくなったり、位置がずれたりすることがあります。筆者の経験では、経理部門から回ってくる「計算が合わない」という相談の8割は、この括弧の閉じ忘れが原因です。
Excelの数式入力画面では、対応する括弧が色分けして表示されます。最後の括弧を入力した際、一瞬だけ太字で強調されるペアを注視してください。
文字列と数値の取り違え
条件式で `"100"` と記述すると、Excelはこれを数値ではなく「テキスト(文字列)」として認識します。
注意点: `B2 >= "100"` という比較は、B2に数値の100が入っていても正しく判定されません。数値の比較にはダブルクォーテーションを付けないよう注意してください。逆に、部署名などのテキストを比較する場合は、必ず `"営業部"` のように囲む必要があります。
Microsoft公式サイトの「IF 関数 - 複数条件とネストの回避」に関するドキュメントでも、ネストが深くなりすぎる場合の注意喚起がなされています。
(参照:https://support.microsoft.com/ja-jp/office/if-%E9%96%A2%E6%95%B0-69aed7c9-4e8a-4755-a9bc-aa8bbff73be2)
プロのコツ:メンテナンス性を高める独自の工夫
15年の実務経験から、複雑なIF関数を運用し続けるための「現場の知恵」を紹介します。

IFS関数の活用(Microsoft 365 / Excel 2019以降)
もしお使いのExcelが比較的新しいバージョンであれば、ネストを繰り返す代わりに `IFS関数` を使うことを検討してください。
=IFS(条件1, 結果1, 条件2, 結果2, 条件3, 結果3)
これを使えば、IFを何度も重ねる必要がなくなり、数式の構造が非常にシンプルになります。筆者が社内の管理用ツールを刷新する際は、まずこの関数の利用可否を確認します。
数式の分割と作業列の利用
「一つのセルにすべてを詰め込まない」こともプロの技術です。あまりに複雑な条件分岐になる場合は、あえて「作業列」を作り、判定を2〜3段階に分けます。
例えば、列Fで「部署と金額の判定」を行い、その結果を受けて列Gで「最終的な承認者」を出すといった具合です。
プロのコツ: 作業列を使うと、デバッグ(間違い探し)が容易になります。計算が合わないときに「どの段階で判定が狂ったのか」を特定しやすくなるため、急ぎの月次決算などで威力を発揮します。
また、ショートカットキー「Ctrl + Shift + Enter」(配列数式)や、最新の「FILTER関数」などとの組み合わせも、実務のスピードを上げる強力な武器となります。の使い方も合わせて確認しておくと、さらに活用の幅が広がります。
まとめ
実務で必要とされる複雑な条件分岐は、基本となるIF関数にAND/OR関数を組み合わせ、必要に応じてネストさせることで、そのほとんどを解決できます。
- AND関数は「すべての条件を満たす」場合に使う
- OR関数は「どれか一つの条件を満たす」場合に使う
- ネスト(入れ子)は条件の厳しい順、あるいは数値の大きい順に組む
- 可読性を高めるために数式内での改行(Alt + Enter)を活用する
- 最新バージョンならIFS関数の利用も検討する
複雑なルールを数式で表現できるスキルは、単なる作業効率化にとどまらず、業務フローそのものを整理し、組織の意思決定を迅速にする価値を持っています。
(参照:Microsoft公式サイト AND 関数 - https://support.microsoft.com/ja-jp/office/and-%E9%96%A2%E6%95%B0-5f8c4077-e993-44c2-8af2-659f02961f0d)


コメント