VBAの演算子
計算やデータの比較、文字の連結などの処理を行う場合、演算子と呼ばれる記号を使用します。VBAで使用できる演算子は以下の表の5種類になります。
VBAで使用できる演算子一覧表
演算子名 | 概要 |
---|---|
算術演算子 | 足し算、引き算、掛け算、割り算などの演算を行うときに使用します。 |
比較演算子 | 値と値の大きさを比較するときに使用します。 |
文字列連結演算子 | 文字列と文字列を連結するときに使用します。 |
論理演算子 | 「または」「かつ」のように複数の条件を指定するときに使用します。 |
代入演算子 | 右辺の値を左辺に代入するときに使用します。 |
各演算子の詳細解説
算術演算子
算術演算子は、加算、減算、乗算、除算などの計算を行うときに使用します。
算術演算子の一覧、使用例
演算子 | 内容 | 使用例 | 結果 |
---|---|---|---|
+ | 加算(足し算) | 5+2 | 7 |
– | 減算(引き算) | 5-2 | 3 |
* | 乗算(掛け算) | 5*2 | 10 |
/ | 徐算(割り算) | 5/2 | 2.5 |
^ | 累乗(べき乗) | 5^2(5を2回乗算) | 25 |
¥ | 割り算の整数値 | 5¥2 | 2 |
Mod | 割り算の余り | 5Mod2 | 1 |
算術演算子の計算の優先順位は
- 「^」べき乗
- 「*」掛け算
- 「/」割り算
- 「¥」整数除算
- 「Mod」乗余
- 「+」足し算
- 「‐」引き算
の順番になりますが、演算式を「()」カッコで囲むとカッコ内の演算が優先されます。
比較演算子
比較演算子は、2つの値を比較して、条件に合っている場合は「True」条件は合わない場合は 「False」を返します。条件分岐の処理の中で条件式を設定する場合などに使用されます。
比較演算子の一覧、使用例
演算子 | 内容 | 使用例 | 結果 |
---|---|---|---|
< | より小さい | 5<2 | False |
<= | 以下 | 5<=2 | False |
> | より大きい | 5>2 | True |
>= | 以上 | 5>=2 | True |
= | 等しい | 5=2 | False |
<> | 等しくない | 5<>2 | True |
Like | パターンマッチング | “5月1日”Like”5月*” | True |
Is | オブジェクト比較 | Sheets(“sheet1”) Is Sheet(1) | True |
※Is【イズ】演算子は、2つのオブジェクトが同じオブジェクトを参照しているかどうかで参照している場合は「True」同じオブジェクトを参照していない場合は「False」を返します。
※Like【ライク】演算子は、文字列と文字列パターンを比較し、その結果を「True」または「False」で返します。文字列パターンには以下のワイルドカードを指定することができます。
Like演算子で利用できるワイルドカード一覧
ワイルド カード | 内容 | 使用例 |
---|---|---|
* | 0文字以上の任意の文字列 | “*V*” → Vが含まれる文字列 |
? | 任意の1文字 | “V??” → Vで始まる3文字の文字列 |
# | 任意の1数字 | “#月” → 1文字目が数字で月で終わる文字列 |
[] | []内に指定した1文字 | [VBA] → VかBかAのいずれか1文字 |
[!] | []内に指定した文字以外の1文字 | [!VBA] V、B、A以外の1文字 |
[-] | []内に指定した範囲の1文字 | [A-C] → AからCまでの1文字 |
文字列連結演算子
文字列連結演算子は、文字列と文字列を連結して一つの文字列にするために使用します。「+」は加算を意味する算術演算子としても使用されるため一般的には「&」【アンパサンド】が使用されます。
文字列連結演算子一覧
演算子 | 意味 | 使用例 | 結果 |
---|---|---|---|
& | 文字列の連結 | “Excel” & “VBA” | ExcelVBA |
+ | 文字列の連結 | “Excel” + “VBA” | ExcelVBA |
論理演算子
論理演算子は、条件を満たす場合は「True」満たされない場合は「False」を返します。条件式で複数の条件を組み合わせる場合などに使用されます。
論理演算子一覧
演算子 | 書式 | 内容 |
---|---|---|
And | 条件1 And 条件2 | 条件1を満たし条件2を満たす (論理積) |
Or | 条件1 Or 条件2 | 条件1を満たすか条件2を満たす (論理和) |
Not | Not 条件 | 条件ではない (論理否定) |
Eqv | 条件1 Eqv 条件2 | 条件1を満たし、かつ条件2を満たすまたは、 条件1を満たさない、かつ条件2を満たさない (論理等価演算) |
Imp | 条件1 Imp 条件2 | 条件1を満たさない または 条件2を満たす (論理包含演算) |
Xor | 条件1 Xor 条件2 | 条件1を満たし、条件2を満たさない、または 条件2を満たし、条件1を満たさない (排他的論理和) |
代入演算子
代入演算子の「=」を使用し右辺の値を左辺に代入するいう意味を持ちます。代入演算子の「=」はプロパティ値を設定したり、変数に値を代入するときに使用します。
代入演算子一覧
演算子 | 内容 | 使用例 | 結果 |
---|---|---|---|
= | 右辺を左辺に代入 | Range(“A1”) = 1 | A1セルに1を代入 |
代入演算子の「=」と比較演算子の「=」の違い
「=」【イコール】は、その使用方法によって意味合いが変わってきます。例えば、条件分岐などで条件式を設定する場合の「=」は「等しい」という意味の「比較演算子」になり単独で「X=Y」のように使用した場合は、「XをYに代入する」という意味の「代入演算子」になります。
以上で、VBA 演算子 の 解説を終了します。ありがとうございました。