エクセル:「IF」の中に「IF」はややこしい!「AND」「OR」を使おう

この記事は約3分で読めます。
記事内に広告が含まれています

操作画面

こんにちは、さち です。

エクセルで「IF」関数ってよく使いますよね。
この関数を覚えていれば
大抵の条件分岐は何とかなるので非常に便利です。

しかし、IF関数だけで条件分岐をしていると
IFの中にIFが入る、いわゆる「IFのネスト(入れ子)」ができてしまい
後で修正する時に『どうなんってんだこれ?』と泣きたくなります。

例えば、「条件1」「条件2」が両方とも「○」のときに「OK」とする場合
「式」と「結果」は上の画像のようになります。

IFのネストの数がこれくらいならまだ何とかなりますが
条件3, 条件4, 条件5 … と増えていったら絶望的。
ダレカタスケテー!

スポンサーリンク

全部当てはまる時だけOK!「AND」関数

=AND( 条件1, 条件2, 条件3, … )

すべての条件が当てはまる時だけ「TRUE(真)」を返す。
逆に、1つでも当てはまらなければ「FALSE(偽)」を返す。
条件は「,(コンマ)」で区切れば何個書いてもよい。

  1. IF関数だけで書いた
    「条件1」「条件2」が両方とも「○」のときに「OK」とする式を
    AND関数を使ってもっとシンプルにしてみましょう。
    操作画面
  2. AND関数を使って分岐の条件を書くとこうなります。
    「条件1」「条件2」が両方「○」の時だけ「TRUE」が返ってきます。
    操作画面
  3. IF関数と組み合わせるとこうなります。
    条件が1つにまとまったのでIF関数は1つだけで済みます。
    (IF関数は「TRUE」なら「真の場合」を、「FLASE」なら「偽の場合」を実行する)
    操作画面

これなら、条件が増えても修正が簡単ですね。

1つでも当てはまればOK!「OR」関数

=OR( 条件1, 条件2, 条件3, … )

条件が1つでも当てはれば「TRUE(真)」を返す。
逆に、1つも当てはまらない時は「FALSE(偽)」を返す。
条件は「,(コンマ)」で区切れば何個書いてもよい。

  1. IF関数だけで書いた
    「条件1」「条件2」のどちらかが「○」のときに「OK」とする式を
    OR関数を使ってもっとシンプルにしてみましょう。
    操作画面
  2. OR関数を使って分岐の条件を書くとこうなります。
    「条件1」「条件2」どちらかが「○」の時に「TRUE」が返ってきます。
    操作画面
  3. IF関数と組み合わせるとこうなります。
    条件が1つにまとまったのでIF関数は1つだけで済みます。
    (IF関数は「TRUE」なら「真の場合」を、「FLASE」なら「偽の場合」を実行する)
    操作画面

これなら、条件が増えても修正が簡単ですね。
(大事なことなので二回目)

当てはまらない場合はOK!「NOT」関数(おまけ)

「AND」「OR」以外で、同じような働きをするものに
「NOT」関数というものがあります。

=NOT( 条件 )

条件に当てはまらない場合「TRUE(真)」を返す。
逆に、当てはまる場合は「FALSE(偽)」を返す。

NOT関数を使って
「×」でなければ「OK」という条件を書くと「式1」のようになります。
操作画面

「式2」のように
「=」等の代わりに「<>」を使うと「~でない」という意味になるので
NOT関数を単独で使う理由は少ないかもしれませんが
AND関数,OR関数と組み合わせて使うと便利です。

AND関数, OR関数 は関数名がそのままの意味で直感的。
知らなかったという人はぜひ覚えて使って下さい。

条件と結果によっては AND, OR が使えない場合もあり
必ず IFのネスト(入れ子) を回避できるというわけではないですが
分岐条件をシンプルに書くのにきっと役立つはずです。

【関連記事】

   → エクセル:「IF」の中の「IF」が見にくいから解決法を考えてみた
   → エクセル(Excel)で知ってると便利なこと 目次

コメント

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