AND関数・OR関数の使い方【Excel】IF関数との組み合わせ実例

Excel AND OR 関数 組み合わせ アイキャッチ画像 Uncategorized

実務におけるExcel作業では、単一の条件だけでデータが完結することは稀です。「営業部の社員で、かつ売上が100万円以上」といったAND(かつ)条件や、「欠品している、または納期が1週間以内」といったOR(または)条件を組み合わせるスキルは、業務効率を左右する重要な分岐点となります。15年にわたり経理部門や営業管理の現場で数多くの表を作成してきた筆者の経験から言えば、複雑な条件分岐をスマートに処理できるかどうかで、データの信頼性とメンテナンス性が劇的に変わります。

Excel AND OR 関数 組み合わせ - 営業成績管理表のデータ例(社員名、部署、売上金額、達成フラグ)
営業成績管理表のデータ例(社員名、部署、売上金額、達成フラグ)

初級:Excel AND OR 関数 組み合わせの仕組みを理解する

論理関数であるAND関数とOR関数を組み合わせる際、まず押さえておくべきは「最終的に何が返ってくるのか」という点です。これらの関数は、条件を評価した結果として「TRUE(真)」または「FALSE(偽)」という値を返します。

AND関数の動作原理と実務での役割

AND関数は、指定したすべての引数が「TRUE」である場合にのみ、結果として「TRUE」を返します。一つでも条件から外れれば「FALSE」となります。経理の現場でよく見かけるのは、仕訳データのダブルチェックです。「金額が一致している」かつ「勘定科目が正しい」という2つのハードルを同時に超える必要がある場面で重宝します。

Microsoft公式サイトの解説によれば、AND関数は最大255個の条件を指定可能ですが、実務で5個以上の条件を並べることは稀です。
参照:https://support.microsoft.com/ja-jp/office/and-%E9%96%A2%E6%95%B0-5f848411-912b-42f2-8c44-325372481c00

OR関数の動作原理と実務での役割

OR関数は、指定した条件のうち「どれか一つでも」満たしていれば「TRUE」を返します。在庫管理において「在庫数が10以下」または「最終出荷日から30日以上経過」といった、複数のアラート条件のいずれかに該当する商品を抽出する際に非常に有効です。

参照:https://support.microsoft.com/ja-jp/office/or-%E9%96%A2%E6%95%B0-7d17ad31-158a-40a1-93a5-3399477e779c

TRUEとFALSEが数式を動かす仕組み

筆者が社内研修で教えていると、初心者の多くが「TRUE/FALSEと表示されるだけで、何に使うのか分からない」という壁にぶつかります。この「TRUE/FALSE」は、後述するIF関数や条件付き書式の「スイッチ」として機能します。を活用することで、特定の条件を満たす行だけを自動で色付けするといった高度な視覚化が可能になります。

Excel AND OR 関数 組み合わせ - AND関数とOR関数を組み合わせてセルにTRUEが表示された画面
AND関数とOR関数を組み合わせてセルにTRUEが表示された画面

中級:実務に即した複数条件の判定

基本を理解したら、次は実務シナリオに基づいた「組み合わせ」の構築です。複数の条件が入れ子(ネスト)構造になる場合、関数の優先順位を正確に記述する必要があります。

在庫管理における在庫切れ・過剰在庫の同時判定

例えば、商品コード「A-001」の在庫管理表を想定してください。判定基準として「在庫数が10未満(欠品リスク)」または「在庫数が500以上(滞留リスク)」のいずれかに該当する場合に警告を出したいとします。この場合、OR関数を用いて以下のように記述します。

=OR(C2<10, C2>=500)

筆者の経験では、このように「両端の異常値」を拾い上げる設定は、製造現場の進捗管理や予算の予実管理で非常に重宝されます。

勤怠管理における深夜残業と休日出勤のフラグ立て

さらに複雑な例として、勤怠管理でのフラグ立てを考えます。「土曜日または日曜日」であり、かつ「勤務時間が8時間を超える」場合に特定の手当対象とするケースです。ここではAND関数の中にOR関数を組み込みます。

=AND(OR(B2="土", B2="日"), C2>8)

このように記述することで、「週末であること」という条件(OR)と「長時間労働であること」という条件(AND)を同時に満たす行を特定できます。

ポイント: 組み合わせ数式を作る際は、まず日本語で「(AまたはB)かつ C」のように整理してから数式に落とし込むと、論理ミスを防げます。

Excel AND OR 関数 組み合わせ - 勤怠データ(日付、曜日、勤務時間)に基づく手当対象フラグの表示例
勤怠データ(日付、曜日、勤務時間)に基づく手当対象フラグの表示例

上級:IF関数と組み合わせた高度な自動化

ANDやORを単独で使う場面は限定的です。真の力を発揮するのは、IF関数との組み合わせによる「自動判定」のフェーズです。

経費精算における承認ルートの自動判別

経理部門での実務例を挙げます。経費精算において「金額が5万円以上」または「交際費カテゴリーである」場合に、部長承認を必須とするロジックを作成する場合です。

=IF(OR(D2>=50000, E2="交際費"), "要部長承認", "課長承認")

実務でよく見かけるのは、この判定を人間が目視で行い、承認漏れが発生するケースです。数式で自動化しておくことで、ヒューマンエラーを物理的に排除できます。

営業成績に応じたインセンティブ計算のロジック

営業管理では、よりシビアな条件設定が求められます。例えば「目標達成率が100%以上」かつ「新規顧客獲得数が3件以上」の両方を満たした場合のみ、特別なインセンティブを付与する場合です。

=IF(AND(F2>=1, G2>=3), "対象", "-")

社員名の「田中さん」や「佐藤さん」の横に、リアルタイムで「対象」と表示される仕組みを作ることで、チームのモチベーション管理にも繋がります。を使いこなせば、さらに複雑なランク分けも可能です。

Excel AND OR 関数 組み合わせ - 営業成績表。売上目標達成率と新規獲得数からインセンティブ対象を自動判定している画面
営業成績表。売上目標達成率と新規獲得数からインセンティブ対象を自動判定している画面

現場での失敗を防ぐデバッグとメンテナンス

Excel歴が長くなると、数式が長く複雑になりがちです。しかし、複雑すぎる数式は作成した本人以外が修正できなくなる「属人化」のリスクを孕んでいます。

括弧()の閉じ忘れと優先順位のミス

初心者がつまずきやすいポイントとして最も多いのが、括弧の対応関係です。AND関数の中にOR関数を入れる際、どこで括弧を閉じるべきか混乱し、エラーが返ってくる場面を何度も見てきました。

注意点: 数式バーで括弧をクリックすると、対応する閉じ括弧が強調表示されます。これを利用して、論理の区切りが正しいか常に確認してください。

文字列と数値の混在による判定エラー

実務でよく見かける失敗に、数値として扱うべき「金額」が文字列として入力されているケースがあります。`=AND(A1>1000)` という数式において、A1が文字列の「1000」であれば、Excelはこれを数値の1000とは認識せず、意図しない判定結果を返します。これを防ぐには、数式の作成前に`VALUE`関数で型を揃えるか、データ自体のクレンジングが必要です。

数式内での改行による視認性の向上

筆者が後輩によく勧めているテクニックが、数式バー内での改行です。`Alt + Enter`キーを使うことで、数式を適切な場所で改行できます。

=IF(
AND(
OR(B2="営業部", B2="総務部"),
C2>=1000000
),
"特別表彰",
"通常"
)

このように構造化して記述することで、後から見返した際や、他人がファイルを共有した際のメンテナンス性が飛躍的に向上します。

Excel AND OR 関数 組み合わせ - 数式バー内でAlt+Enterを使って改行し、数式を見やすく整理している様子
数式バー内でAlt+Enterを使って改行し、数式を見やすく整理している様子

プロのコツ:保守性と処理速度を両立させる技術

最後に、単なる関数の組み合わせにとどまらない、実務家としてのTipsを紹介します。

スピル機能(FILTER関数)との使い分け

Microsoft 365やExcel 2021以降を使用している場合、IF関数やAND/OR関数だけで頑張る必要はありません。特定の条件に合致する行を丸ごと抽出したいなら、FILTER関数の方が適しています。

ただし、FILTER関数内では「AND」や「OR」という単語は使わず、算術演算子を使用するのが一般的です。
– AND条件:`(条件1) (条件2)`
– OR条件:`(条件1) + (条件2)`

この「論理演算」による記述は、処理速度が非常に速く、大量のデータを扱う際に真価を発揮します。

論理演算による高速化とシンプル化

プロの現場では、あえてAND関数を使わずに「掛け算」で代用することがあります。例えば、`=(A2=”営業部”)(B2>1000000)` と入力すると、両方の条件を満たすときだけ「1」が返り、それ以外は「0」になります。これをIF関数の条件式に放り込むことで、数式を短く保つことができます。

LET関数を用いた変数の定義

Excel 2019以降やMicrosoft 365では、LET関数を使って数式内の共通部分を変数として定義できます。
`=LET(売上, C2, 目標, D2, IF(AND(売上>目標, 売上>1000000), “達成”, “未達成”))`
このように書くことで、セル参照を何度も繰り返す必要がなくなり、数式の意図が明確になります。

ポイント: 常に「6ヶ月後の自分が見て理解できるか」を基準に数式を組みましょう。複雑な論理ほど、シンプルな構造に落とし込むのがプロの仕事です。

まとめ

Excel AND OR 関数 組み合わせをマスターすることは、手作業による確認作業をゼロにするための第一歩です。重要なポイントを整理します。

– AND関数はすべての条件一致、OR関数はいずれかの条件一致を判定する
– 組み合わせる際は、数式の構造(括弧の対応)を最優先で確認する
– IF関数と連携させることで、実務上の判断を自動化できる
– 複雑な数式は`Alt + Enter`で改行し、メンテナンス性を高める
– 最新のExcelバージョンでは、論理演算(* や +)やLET関数の活用も検討する

日々の売上管理や勤怠管理、経費精算といったルーチンワークにこれらのテクニックを取り入れ、ミスが起きない仕組みを構築してみてください。をさらに進めることで、本来時間を割くべき分析や企画業務に集中できる環境が整うはずです。

コメント

タイトルとURLをコピーしました