【VBA】IF文と論理演算子を組み合わせる【複数条件を指定する】

VBA

本来のIF文は1つにつき1つの条件を指定します。

ですが、時には処理分岐の内容は同じでも、条件が複数ほしいときがあります。

 

そんなときには論理演算子である『AND』や『OR』といったモノを用いると、同時に複数の条件で判定することが可能になります。

それに加えて、『NOT演算子』といった「〇〇だった場合にはFalse」といった本来の逆の判定を行えるモノもあります。

 

なので、本記事では「AND」「OR」「NOT」の3つの論理演算子を解説しますので、ぜひ覚えていってください。

ちなみにIF文の理解がイマイチなら『IF文の使い方』に目を通してみてください。

スポンサーリンク



IF文と論理演算子を組み合わせた記述方法

ここではIF文と「AND演算子」「OR演算子」「NOT演算子」とを組み合わせた条件式の書き方について解説していきます。

『IF+AND演算子』の書式

IF文の条件式に『AND演算子』を用いると上のように条件を複数設けることができます。

そして、『AND演算子』は指定した条件の全て満たすことができれば「True」となります。

 

例えば、下のコードでAND演算子を使って複数の条件を設けています。

上のコードでは6行目のIF文で「i > 3」と「i < 5」の2つの条件を設定しています。

この2つの条件を満たすのは変数iが”4”ということになります。

 

ちなみに、上のコードを実行すると下のような結果になります。

 

『IF+OR演算子』の書式

IF文の条件式に『OR演算子』を用いると上のように複数の条件を設けることができます。

そして、上で紹介した『AND演算子』とは違って、『OR演算子』は指定した条件のどれか1つでも満たすことができれば「True」となります。

 

例えば、下のコードでOR演算子を使って複数の条件を設けています。

上のコードでは6行目のIF文で「i = 2」と「i = 4」の2つの条件を設定しています。

この2つの条件を満たすのは変数iが”2”と”4″の時ということになります。

 

ちなみに、上のコードを実行すると下のような結果になります。

 

『IF+Not』の書式

IF文の条件式に『NOT演算子』を用いると、条件を満たした場合は”False”となります。

つまり、本来のIF文とは逆の判定になるということです。

 

例えば、下のコードでNOT演算子を使っています。

上のコードでは6行目のIF文で「i = 2」を条件に設定しています。

この場合、Trueになるのは変数iが”1,3,4,5になるとき、Falseになるのが変数iが”2の時になります。

 

ちなみに、上のコードを実行すると下のような結果になります。

スポンサーリンク

コメント