演算子の使い方

VBA においても足し算や掛け算などの四則計算などを行う事が出きます。また値と値を比較するようなことも出きます。これらをプログラム上で記述する時に使われるのが演算子です。ここでは Excel VBA で利用可能な演算子の使い方について解説します。

(Last modified: )

算術演算子

算術演算子とは加算や乗算などを行うもので、数値の計算を行うときに使用します。

演算子説明得られる結果
+足し算8 + 513
-引き算10 - 46
*掛け算3 * 515
/割り算8 / 51.6
\割り算の商8 \ 51
Mod割り算の余り8 Mod 533
^べき乗6 ^ 236

\ がバックスラッシュとして表示されている場合は、円記号のことです。

例えば次のように使用します。

Sub テスト()
    Dim x As Integer

    x = 5 + 2    'x = 7
    x = 5 - 2    'x = 3
    x = 5 * 2    'x = 10
    x = 5 / 2    'x = 2.5
    x = 5 \ 2    'x = 2
    x = 5 Mod 2  'x = 1
    x = 5 ^ 2    'x = 25 
End Sub

比較演算子

比較演算子とは値と値を比較する時に使います。「大きい」とか「以下」などです。比較した結果はブール型の値として True または False の値を取ることになります。

演算子説明得られる結果
<小さい8 < 5False
<=以下3 <= 8True
>大きい8 > 5True
>=以上3 >= 8False
=等しい3 = 8False
<>等しくない3 <> 8True

比較演算子は条件分岐や繰り返し処理の中で主に使用されます。

例えば次のように使用します。

Sub テスト()
    Dim b As Boolean

    b = 5 < 2    'b = False
    b = 5 <= 2   'b = False
    b = 5 > 2    'b = True
    b = 5 >= 2   'b = True
    b = (5 = 2)  'b = False
    b = 5 <> 2   'b = True
End Sub

論理演算子

論理演算子とは「AかつB」とか「AまたはB」などのように条件を組み合わせて使う場合に使用します。条件の部分には論理演算子による条件判定の式が入ります。

演算子説明得られる結果
And論理積8 > 4 And 2 <= 3True
Or論理和8 > 4 Or 4 <= 1True
Not論理否定Not 8 > 4False

And は論理積です。左辺及び右辺にある条件式がどちらも True の場合だけ結果として True を返します。

Or は論理和です。左辺または右辺のどちらかの条件式が True の場合に True を返します。

Not は論理否定です。右辺の条件式が True の場合に False を返し、右辺の条件式が False の場合に True を返します。

例えば次のように使用します。

Sub テスト()
    Dim b As Boolean

    b = 5 < 2 And 3 > 7  'b = False
    b = 5 < 2 Or 3 > 7   'b = True
    b = Not 5 > 2        'b = False
End Sub
サンプルコード

それでは簡単なサンプルを作成して試してみます。

シートに次のように値を入力しました。

演算子の使い方(1)

B 列および D 列の値を取得し、演算を行った結果を E 列のセルに入力します。次のようなプログラムを記述しました。

Sub テスト()
    Range("E2").Value = Range("B2").Value + Range("D2").Value
    Range("E3").Value = Range("B3").Value - Range("D3").Value
    Range("E4").Value = Range("B4").Value * Range("D4").Value
    Range("E5").Value = Range("B5").Value / Range("D5").Value
    Range("E6").Value = Range("B6").Value \ Range("D6").Value
    Range("E7").Value = Range("B7").Value Mod Range("D7").Value
    Range("E8").Value = Range("B8").Value ^ Range("D8").Value
End Sub

演算子の使い方(2)

プログラムを実行すると、 Excel のシートの E 列に次のように演算結果の値が入力されます。

演算子の使い方(3)

-- --

Excel VBA で利用可能な演算子の使い方について解説しました。

( Written by Tatsuo Ikura )

広告