IF関数は『OR』と『AND』の合わせ技が便利!【経理で使えるExcel】

IF関数とOR、AND

” 経理で使える関数ってなんかない? ”

ありますよIF関数。さらにORとANDを加えたIF関数はもっと使える!というお話をしていきます。

IF関数は「OR」と「AND」の合わせ技が便利!

Excelにはさまざまな関数がありますが。なかでもこれは使える、使いたい、という関数のひとつに「IF」があります。

そのIF関数について。IF単独でも、もちろん使えるのですが、「OR」や「AND」の関数との合わせ技はもっと使える!もっと便利!

ということで、「IF+OR」と「IF+AND」を使った経理での活用例をお話ししていきます。

このあとのお話の内容
  • 「IF+OR」を使った商品別売上高予実表
  • 「IF+AND」を使った入金管理表
  • 「IFS関数」を使った入金管理表その2

それでは、このあと順番に見ていきましょう。

 

「IF+OR」を使った商品別売上高予実表

IF関数を使った経理の活用例を見ていきます。まずは、IF関数とOR関数の合せ技による「商品別売上高予実表」です。

【予習】その前に「IF関数」とは?

「IF+OR」を見る前に、そもそも「IF関数」とは?、をサラッと具体例で確認しておきましょう ↓

問題
  • セル「A1」が「70」以上 →セル「B1」に「合格!」と表示する
  • セル「A1」が「70」未満 →セル「B1」に「不合格…」と表示する

上記の「問題」に対する解答は次のとおりです ↓

image1

上図のとおり、「B1」セルに「IF関数」を入力します。これを解説すると ↓

IF(条件式 , 条件式の結果がマルの場合 , 条件式の結果がバツの場合)

  • 条件式・・・A1>70【A1が70超かどうか】
  • 条件式の結果がマルの場合・・・”合格!”【「合格!」と表示する】
  • 条件式の結果がバツの場合・・・”不合格…”【「不合格…」と表示する】

これがIF関数の「基本」です。この応用として、次に「IF+OR」に行ってみましょう。

「IF+OR」で複数条件にも対応できる

「IF+OR」の具体例として、「商品別売上高予実表」を作成することにします。表中では、各商品の売上高について、計画値と実績値とのズレが大きいもの(20%以上)を判定します ↓

問題
  • 「対計画比(D列)」が120%以上である、または、「対計画比(D列)」が80%以下である場合には、「評価(E列)」に「再計画」と表示する
  • それ以外は「評価(E列)」を空欄にする

注目ポイントは、上記の問題中にある「または」の部分です。「または」を挟んで、条件が2つある。これを「IF+OR」で表現します。解答は次のとおりです ↓

image6

上図のとおり、「E2」セルに「IF+OR」関数を入力します。これを解説すると ↓

IF(条件式 , 条件式の結果がマルの場合 , 条件式の結果がバツの場合)

  • 条件式・・・OR(D2>=1.2,D2<=0.8)【「対計画比(D2)」が120%以上である、または、「対計画比(D2)」が80%以下】
  • 条件式の結果がマルの場合・・・”`再計画”【「再計画!」と表示する】
  • 条件式の結果がバツの場合・・・””【空欄にする】

ちょっとやっかいなのは、「条件式」の部分だけ。「OR」関数を使って、2つの条件をまとめている点は要確認です。

このように、「OR」は、複数の条件を「または」でつなぐ役割を持っています。

また、「>=」は「以上」、「<=」は「以下」を表現する際に使う不等号です。経理の現場ではよく使いますから覚えておきましょう。

あとは、E2セルから下に向かってドラッグ&コピーです。これにより、「対計画比が120%以上または80%以下」という商品について、「再計画」と判定することが可能になります。

 

「IF+AND」を使った支払管理表

続いて、IF関数とAND関数の合せ技による「入金管理表」の具体例です。 表中では、きょう現在、入金期日を過ぎているのに未入金の得意先を判定します。

問題
  • 「きょう(A1)」が「入金期日(C列)」を過ぎている、かつ、「入金日(D列)」に入力がない場合には、「状態(E列)」に「未入金!」と表示する
  • それ以外は「状態(E列)」を空欄にする

注目ポイントは、上記の問題中にある「かつ」の部分です。「かつ」を挟んで、条件が2つある。これを「IF+AND」で表現します。解答は次のとおりです ↓

image2

上図のとおり、「E4」セルに「IF+AND」関数を入力します。これを解説すると ↓

IF(条件式 , 条件式の結果がマルの場合 , 条件式の結果がバツの場合)

  • 条件式・・・AND($B$1>C4,D4=””)【「きょう(B1)」が「入金期日(C4)」を超えている、かつ、「入金日(D4)」が空欄】
  • 条件式の結果がマルの場合・・・”未入金!”【「未入金!」と表示する】
  • 条件式の結果がバツの場合・・・””【空欄にする】

ちょっとやっかいなのは、「条件式」の部分だけ。「AND」関数を使って、2つの条件をまとめている点は要確認です。

このように、「AND」は、複数の条件を「かつ」でつなぐ役割を持っています。

また、「>(不等号)」は、数値だけにしか使えないわけではありません。上記のように、日付についても「超えている(過ぎている)」を表現することができる、ということを覚えておきましょう。

あとは、E4セルから下に向かってドラッグ&コピーです。これにより、「きょう時点で入金期日を過ぎているのに未入金」という売上について、「未入金!」と判定することが可能になります。

ちなみに、「$B$1」を「B1」としてしまうと、コピーをする際に「B1」がいっしょにズレてしまうため、正しい判定ができなくなってしまいます。

E4セルをどれだけコピーしても、「B1(きょう)」セルは常に固定できるように、「$B$1」としなければいけません。。このような「$」を付したセル表示を「絶対参照」と言います。

もしも、「絶対参照? はて?」ということであれば、そこは別途、お勉強をしておきましょう。Excelを活かすのならば、絶対参照は必要不可欠です。

 

「IFS関数」を使った入金管理表その2

複数条件についてもうひとパターン。「IFS関数」にも触れておくことにします。

「IF関数」とは別の関数ではありますが。ここまで来たら、もはや行きがけの駄賃です。合わせて学んでしまいましょう。

さきほどの「IF+AND」の合せ技による「入金管理表」を、もう少しバージョンアップします。入金済みの場合には、「状態(E列)」に「入金」と表示させます ↓

問題
  1. 「きょう(A1)」が「入金期日(C列)」を過ぎている、かつ、「入金日(D列)」に入力がない場合には、「状態(E列)」に「未入金!」と表示する
  2. 「入金日(D列)」に入力がある場合には、「状態(E列)」に「入金」と表示する
  3. それ以外は「状態(E列)」を空欄にする

バージョンアップしたのは、②の部分が追加されたところです。①と③は、「IF+AND」のときと同じです。ひとまず、解答を見てみましょう ↓

image4

上図のとおり、「E4」セルに「IF」ではなく、「IFS」関数を入力します。これを解説すると ↓

IFS(条件式1 , 条件式1の結果がマルの場合 , 条件式1の結果がバツの場合の条件式2 , 条件式2の結果がマルの場合 , TRUE , いずれにも当てはまらない場合)

  • 条件式1・・・AND($B$1>C4,D4=””)【「きょう(B1)」が「入金期日(C4)」を超えている、かつ、「入金日(D4)」が空欄】
  • 条件式1の結果がマルの場合・・・”未入金!”【「未入金!」と表示する】
  • 条件式1の結果がバツの場合の条件式2・・・”D4<>”””【D4が空欄ではない】
  • 条件式2の結果がマルの場合・・・”入金”【「入金」と表示する】
  • いずれにも当てはまらない場合【空欄にする】

このように、条件式の結果が3つ以上に分岐する場合には「IFS関数」を使います。

さきほどまでは、条件式が1つで、その結果が「マル」か「バツ」かの2つでした。しかし、今回は条件式が2つ、それぞれ結果が「マル」か「バツ」かで分かれていきます。

結論として、結果が3つに分かれます。「状態(E列)」に「未入金!」と表示されるか、「入金」と表示されるか、空欄となるかの3つです。

あらためて整理をしてみると、IFS関数は次のような構造になっています ↓

image3

IFS関数では、上図の構造に当てはめれば、条件式の数はどんどん増やすことが可能です。さいごの「TRUE」で、すべての条件式に当てはまらない場合、つまり「それ以外」を表します。

なお、条件式2にある「<>””」は、「空欄ではない」ということを表す場合に使います。「<>」は「≠」と同じだ、と覚えておきましょう。

【補足】IFS関数はExcel2016からしか使えない

本文中の「IFS関数」は、Excel2016(Office365による利用に限る)からの新しい関数です。ただし、IFS関数が使えなくても、IF関数で代替することは可能です。本文中の具体例について、IF関数で書き換えると以下のとおりです ↓

  • 【IFS関数の場合】IFS(AND($B$1>C4,D4=””),”未入金!”,D4<>””,”入金”,TRUE,””)
  • 【IF関数で書き換えた場合】IF(AND($B$1>C4,D4=””),”未入金!”,IF(D4<>””,”入金”,””))

 

まとめ

IF関数と「OR」「AND」の合わせ技についてお話をしてきました。

さまざまな経理の場面で使えるのが「IF+OR」「IF+AND」です。考え方・使い方を押さえておきましょう。

 

************
  きょうの執筆後記
************

ブログには書けない・書きにくいことその他。きょうの「執筆後記」は毎日メルマガでお届け中です。

よろしければメルマガ(無料)をご登録ください! → 登録はこちらから

スポンサードリンク



ABOUTこの記事をかいた人

税理士レス経理エバンジェリスト、フリーランス型税理士。1975年生まれ。 フリーランスの経理・会社の銀行融資支援を得意にする、横浜市の諸留誕税理士事務所・所長。2016年4月、18年間の「勤め人」を脱して独立開業。以来、ブログを毎日更新中!