- Home ›
- Excel VBA入門 ›
- 基本文法 ›
- HERE
演算子
VBAにおいても四則計算などを行う事が出来ます。また値と値を比較するようなことも出来ます。これらをプログラム上で記述する時に使われるのが演算子です。
演算子には色々な種類がありますので順に見ていきましょう。
算術演算子
算術演算子とは加減乗算を行うもので、一般に使われている「+」とか「-」などのことです。
演算子 | 説明 | 例 | 得られる結果 |
---|---|---|---|
+ | 足し算 | 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 * 4 End Sub
比較演算子
比較演算子とは値と値を比較する時に使います。「大きい」とか「以下」などです。比較した結果はブール型の値として「True」または「False」の値を取ることになります。
演算子 | 説明 | 例 | 得られる結果 |
---|---|---|---|
< | 小さい | 8 < 5 | False |
<= | 以下 | 3 <= 8 | True |
> | 大きい | 8 > 5 | True |
>= | 以上 | 3 >= 8 | False |
= | 等しい | 3 = 8 | False |
<> | 等しくない | 3 <> 8 | True |
比較演算子は条件判定や繰り返し処理の中で使われることがほとんどです。詳しくは制御構造のページで見ていきますが、無理やり使ってみると次のようになります。
Sub テスト() Range("A1").Value = 10 > 20 End Sub
上記を実行すると、セル(A1)に「FALSE」という値が表示されます。
論理演算子
論理演算子とは「AかつB」とか「AまたはB」などのように条件を組み合わせて使う場合に使用します。条件の部分には論理演算子による条件判定の式が入ります。
演算子 | 説明 | 例 | 得られる結果 |
---|---|---|---|
And | 論理積 | 8 > 4 And 2 <= 3 | True |
Or | 論理和 | 8 > 4 Or 4 <= 1 | True |
Not | 論理否定 | Not 8 > 4 | False |
上記の例でも簡単に書いていますが論理演算子を使う場合には次のように記述します。
(条件式1) And (条件式2) (条件式1) Or (条件式2) Not (条件式1)
「And」は論理積です。左辺及び右辺にある条件式がどちらも「True」の場合だけ結果として「True」を返します。
「Or」は論理和です。左辺または右辺のどちらかの条件式が「True」の場合に「True」を返します。
「Not」は論理否定です。右辺の条件式が「True]の場合には「False」を、「False」の場合には「True」を返します。
サンプル
では簡単なサンプルで試してみましょう。下記のサンプルでは「If」構文を使っています。詳しくは別のページで見ますので取りあえず気にしないで下さい。
Sub テスト() Dim x As Integer x = 10 * 5 Range("A1").Value = x Range("A2").Value = 30 / 8 Dim str As String str = "テスト" If str = "テスト" Then Range("A3").Value = "変数の値はテストです" Else Range("A3").Value = "変数の値はテストではありません" End If Dim y As Integer y = 18 If y > 10 And y < 20 Then Range("A4").Value = "変数の値は10から20の間の数値です" End If End Sub
上記のマクロを実行すると次のようになります。
( Written by Tatsuo Ikura )