目次
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 の演算子の説明でした。