覚えておきたいエクセル(Excel)マクロのifとifと組み合わせたor・and・elseの使い方

マネジメントシーンで役立つエクセル術

2016/10/31
Pocket

2013

「if」を使えばマクロでできることが増える!

「if」を使うと「条件づけ」をすることが可能になるのですが、以下のようなマネジメントシーンを想像するとわかりやすいです。

小売店では時にセールを行いますが、店内の全商品をセールの対象にしないこともあります。
特定の商品だけをセール対象にする、ということです。その「特定の商品」を、どのような条件で区分けするのかをifで決めると仕事が効率化されます。

・入荷してから時間が経った商品だけをセール対象にする

・1,000円以上の値段のものだけをセール対象にする

・在庫が多いものだけをセール対象にする

このようなことが可能になります。

小売店では、上司に「新作はセール対象外にして欲しい」、または「安いものはセール対象外で」と言われることも少なくありません。在庫品だけをセールにしたい時もあるでしょう。このような要望に速やかに応える際に「if」が有効的です。

厳選!使えるマクロifその1:「or」

英単語の「or」とまったく同じ意味で使われますので、わかりやすい「if」の1つです。
条件を複数設定して、そのうちの1つでも適応した場合に「対象」とされます。

わかりやすいように条件を2つにしましょう。
条件A=値段が1,000円を超える
条件B=在庫が5つ以上

この場合のifは以下のようになります。
=IF(OR(C4>1000,D4>=5),”20%オフ“)

C4が1000円を超えるという1つめの条件が「C4>1000」であり、在庫が5つ以上という2つめの条件が「D4>=5」です。
この2つの条件のどちらか、もしくは両方を満たした場合「20%オフ」の表示をする指示を出しています。

このifをエクセルシートのE4に打ち込みます。

06-01

ここで「ENTER」を押すと、判定をしてくれます。

06-02

商品Aはセールの条件に当てはまったので「20%オフ」の表示がされます。

このifをオートフィルでE8までコピーしましょう。

そうすることで、商品BからEまで同じように判定してくれます。

06-03

コピー後に「ENTER」を押します。

06-04

これで「在庫が5つ以上の商品」と「元々の値段が1,000円を超える商品」が「20%オフ」になりました。

厳選!使えるマクロifその2:「and」

「or」と混同しやすいのですが、意味合いはまったく異なるのがこの「and」です。
複数の条件設定を全て満たしたものが対象になります。

わかりやすいように、先程と同じ例を使いますが、andでは、「条件A:値段が1,000円を超える」と「条件B:在庫が5つ以上」の両方を満たす必要があります。

ここで打ち込むifは、以下の通りです。
=IF(AND(C4>1000,D4>=5),”20%オフ“)

先程のifとは「or」が「and」に変わっているだけです。

06-05

一度「ENTER」を押してから、オートフィルでコピーしましょう。

06-06

コピー後に「ENTER」を押すと判定が出ます。

06-07

このように「or」を使った時とは結果が異なります。

厳選!使えるマクロifその3:「else」

最後に紹介するのが「else」です。
elseの英単語の意味は「それ以外」であり、ifでも同じように使われます。

今回の例でたとえると「セール対象品」と「それ以外」……つまり「セール対象外」を表記することができます。
先程までのエクセルシートでは、条件に合わなかった商品は「FALSE」と表記されていましたが、「セール対象外」という表記に変えてみましょう。

ここでは「or」と「else」を同時に使ってみます。

=IF(OR(C4>1000,D4>=5),”20%オフ“,”セール対象外”)

このようにorの時に使ったifの後半が変化しますが「セール対象外」という言葉が加わっただけなので、そう難しくはありません。
これで、条件を満たす場合は「20%オフ」、満たさない場合は「セール対象外」と表記されます。

06-08

これまでと同じように、ここで1度「ENTER」を押して、オートフィルを使ってコピーをします。

06-09

最後にまた「ENTER」を押すと結果が表示されます。

06-10

このようにelseを使えば、よりわかりやすくなるので、積極的に使うことをオススメします。

マネたまご マネたまをフォローすれば最新記事をお届けします!
運営会社 | Copyright © kaonavi, inc. All Rights Reserved.