- Home ›
- Excel VBA入門 ›
- 基本文法
演算子の使い方
VBA においても足し算や掛け算などの四則計算などを行う事が出きます。また値と値を比較するようなことも出きます。これらをプログラム上で記述する時に使われるのが演算子です。ここでは Excel VBA で利用可能な演算子の使い方について解説します。
(Last modified: )
算術演算子
算術演算子とは加算や乗算などを行うもので、数値の計算を行うときに使用します。
演算子 | 説明 | 例 | 得られる結果 |
---|---|---|---|
+ | 足し算 | 8 + 5 | 13 |
- | 引き算 | 10 - 4 | 6 |
* | 掛け算 | 3 * 5 | 15 |
/ | 割り算 | 8 / 5 | 1.6 |
\ | 割り算の商 | 8 \ 5 | 1 |
Mod | 割り算の余り | 8 Mod 5 | 33 |
^ | べき乗 | 6 ^ 2 | 36 |
※ \
がバックスラッシュとして表示されている場合は、円記号のことです。
例えば次のように使用します。
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 < 5 | False |
<= | 以下 | 3 <= 8 | True |
> | 大きい | 8 > 5 | True |
>= | 以上 | 3 >= 8 | False |
= | 等しい | 3 = 8 | False |
<> | 等しくない | 3 <> 8 | True |
比較演算子は条件分岐や繰り返し処理の中で主に使用されます。
例えば次のように使用します。
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 <= 3 | True |
Or | 論理和 | 8 > 4 Or 4 <= 1 | True |
Not | 論理否定 | Not 8 > 4 | False |
And
は論理積です。左辺及び右辺にある条件式がどちらも「True」の場合だけ結果として「True」を返します。
Or
は論理和です。左辺または右辺のどちらかの条件式が「True」の場合に「True」を返します。
Not
は論理否定です。右辺の条件式が「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
それでは簡単なサンプルを作成して試してみます。
シートに次のように値を入力しました。
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
プログラムを実行すると、 Excel のシートの E 列に次のように演算結果の値が入力されます。
-- --
Excel VBA で利用可能な演算子の使い方について解説しました。
( Written by Tatsuo Ikura )
著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。