Excel VBAで使う演算子

Excel VBAで使う演算子

Excel VBA の演算子には様々な種類あります。

今回は、Excel VBAで使う以下の演算子の使用方法を説明します。

・算術演算子

・比較演算子

・文字列演算子

・Like演算子

・参照演算子

・論理演算子

算術演算子

算術演算子は加減乗算をするときに使用します。

演算子 内容 使用例 結果
+ 足し算 8+2 10
引き算 8-2 6
* 掛け算 8*2 16
/ 割り算 8/2 4
¥ 割り算の商 8¥5 1
Mod 割り算の余り 8Mod5 3
^ べき乗 8^2 6

(注意)割り算の場合、割る数が0の場合はエラーとなるので注意が必要です。

比較演算子

比較演算子は値と値を比較するときに使用します。

これらの演算子を使用して2つの値を比較すると、結果は TRUE または FALSE の論理値になります。

比較演算子は数字だけでなく、文字列の比較にも利用できます。

演算子 内容 使用例 結果
> より大きい 6>3 True
>= 以上 6>=3 True
< より小さい 6<3 False
<= 以下 6<=3 False
= 等しい 6=3 False
<> 等しくない 6<>3 True

Like演算子

Like演算子は、2つの文字列をパターンを使用し比較するときに使用します。

結果は TRUE または FALSE の論理値になります。

演算子 内容 使用例 結果
Like A Like B “abc” Like “*c” True

パターンは、以下のワイルドカードを使用することができます。

パターン内の文字列 内容 使用例
* 0文字以上の文字 ”*A*” → Aが含まれる文字
? 任意の1文字 “A??” → Aから始まる3文字の文字
# 任意の1桁の数字 (0-9) “#月” → 1文字目が数字、2文字目が月の文字
[] []内に指定した全角または半角の1文字 [ABC] → AかBかCのいづれかの1文字
[!] []内に指定した以外の全角または半角の1文字 [!ABC] → AかBかC以外の1文字
[-] []内に指定した範囲の1文字 [A-C] → AからCまでの1文字

角かっこ ([ ]) で囲んだ文字には、数字を含め、ほぼすべての文字コードを含めることができます。

[-]で文字の範囲を指定する場合、昇順 (小から大の方向) で指定する必要があります。 [A-Z] は有効なパターンですが、[Z-A] は無効です。

[]だけの場合、長さ 0 の文字列 (“”) と見なされます。

文字列演算子

アンパサンド (&) を使用して、1つ以上の文字列を連結 (結合) して、1つの文字列を作成するときに使用します。

演算子 内容 使用例 結果
& 1つ以上の文字列を連結 (結合) して、1つの文字列を作成する =”A”&”B” “AB”

参照演算子

参照演算子は、計算するセル範囲を結合するときに使用します。

これらの演算子を使用して2つの値を比較すると、結果は TRUE または FALSE の論理値になります。

演算子 内容 使用例
:

セル範囲

A1:A5
, 複数の範囲 A1:B5,D1:D9
(半角スペース) セル範囲の共通部分 A1:B4 B2:C6

論理演算子

論理演算子とは「○○または○○」などのように条件を組み合わせて使います。

演算子 内容
And

論理式Aと論理式BがともにTrueである場合True、そうでない場合はFalseを返す。

Or

論理式Aと論理式Bの少なくとも一方がTrueの場合にTrue、そうでない場合はFalseを返す。

Not

論理式がTrueの場合にFalse、Falseの場合にTrueを返す。

演算子の優先順位

1 つの数式で複数の演算子を使用する場合、以下の表の優先順位で計算されます。

数式に同順位の演算子が含まれる場合 (たとえば、掛け算、割り算が含まれる場合)、左から右の順に計算されます。
 

優先順位 演算子 内容 演算子の種類

1

:、(半角スペース)、,

  参照演算子
2 べき乗 算術演算子
3 *、/ 掛け算、割り算
4 割り算の商
5 Mod 割り算の余り
6 +、- 足し算、引き算
7 & 文字列の連結 (結合) 文字列演算子
8 <、<=、>,>=、=、<> 比較演算子すべて 比較演算子

優先順位の変更

計算順序を変更するには、最初に計算を実行する必要のある数式の要素をかっこで囲みます。

次の数式は、足し算の前に掛け算を計算し、7になります。 つまり、この数式ではまず 2 と 3 が掛け算され、その結果に 1 が足し算されます。

1+2*3

上の数式にかっこを使用して次のように変更すると、まず 1 に 2 が足し算され、その結果に 3 が掛け算されるため、計算結果は9 になります。

(1+2)*3)

まとめ

Excel VBA の演算子はたくさんあり、その中から代表的な演算子の使用方法を確認しました。

演算子はすべて覚える必要はありません。プログラムで必要になったときに、内容を確認して使用すればよいです。

以上、Excel VBA の演算子の説明でした。