【Excel VBA】比較演算子と論理演算子

Excel VBA講座 開講中!

今回はExcel VBAにおける、比較演算子と論理演算子についてご紹介します。

・比較演算子とは?

比較演算子とは、「大きい」や「以上」など、値と値を比較する時に使うものです。
名前だけ見ると難しそうですが、要は算数で使われる等号や不等号のようなイメージです。
比較演算子は、指定した条件を満たしている場合には「True」を返し、満たしていない場合には「False」を返します。

下記の表は、VBAの比較演算子になります。

比較演算子説明返ってくる値
=左辺と右辺が等しい場合、Trueを返す1=1True
1=2False
<>左辺と右辺が等しくない場合、Trueを返す1<>2True
1<>1False
<左辺が右辺より小さい場合、Trueを返す1<2True
1<1False
<=左辺が右辺以下の場合、Trueを返す1<=2True
1<=0False
>左辺が右辺より大きい場合、Trueを返す1>0True
1>2False
>=左辺が右辺以上の場合、Trueを返す1>=0True
1>=2False

VBAとGoogle Apps Scriptの違いは、等しい場合の「=」(VBA)と「==」(GAS)や、等しくない場合の「<>」(VBA)と「!=」(GAS)、などの書き方になります。

・論理演算子とは?

論理演算子は下記のように、「AかつB」や「AまたはB」など、複数の条件を組み合わせて使う場合に使うものです。

[条件式A] And [条件式B]
[条件式A] Or [条件式B]
Not [条件式A]

下記の表は、 VBAの論理演算子になります。

論理演算子説明返ってくる値
And論理積 (AND)1 > 0 And 0 <= 1True
0 > 1 And 0 <= 1False
Or論理和 (OR)1 > 0 Or 0 <= 1True
0 > 1 Or 1 <= 0False
Not論理否定 (NOT)Not 0 > 1True
Not 1 > 0False

また、VBAとGoogle Apps Scriptでは、論理積の「And」(VBA)と「&&」(GAS)や、論理和の「Or」(VBA)と「||」(GAS)や、論理否定の「Not」(VBA)と「!」(GAS)、など全て違いますので、両方覚えていく際には使い方の切り替えが必要です。

・演算子確認のためのサンプルコード

以下のコードを実行すると、それぞれの演算子に対して返ってくる値が分かります。

※サンプルの画像はエクセル上に入力したため「TRUE」「FALSE」となっていますが、データ上は「True」「False」です。

・比較演算子

Sub 比較演算子()

Cells(2, 2).Value = 1 = 1 ‘True
Cells(3, 2).Value = 1 = 2 ‘False
Cells(4, 2).Value = 1 <> 2 ‘True
Cells(5, 2).Value = 1 <> 1 ‘False
Cells(6, 2).Value = 1 < 2 ‘True
Cells(7, 2).Value = 1 < 1 ‘False
Cells(8, 2).Value = 1 <= 2 ‘True
Cells(9, 2).Value = 1 <= 0 ‘False
Cells(10, 2).Value = 1 > 0 ‘True
Cells(11, 2).Value = 1 > 2 ‘False
Cells(12, 2).Value = 1 >= 0 ‘True
Cells(13, 2).Value = 1 >= 2 ‘False

End Sub

比較演算子

比較演算子

・論理演算子

Sub 論理演算子()

Cells(2, 2).Value = 1 > 0 And 0 <= 1 ‘True
Cells(3, 2).Value = 0 > 1 And 0 <= 1 ‘False
Cells(4, 2).Value = 1 > 0 Or 0 <= 1 ‘True
Cells(5, 2).Value = 0 > 1 Or 1 <= 0 ‘False
Cells(6, 2).Value = Not 0 > 1 ‘True
Cells(7, 2).Value = Not 1 > 0 ‘False

End Sub

論理演算子

論理演算子

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