こんにちは!ぐーです。
いつもブログをご覧いただき、ありがとうございます!
プログラミング学習の初期段階では、「演算子(えんざんし)」という言葉を聞くだけで、少し身構えてしまう方も多いのではないでしょうか。私も文系出身なのでよくわかります。
そこで今回は、「丸暗記は不要。必要な時にこのページを見返すだけ」というコンセプトで、VBAの演算子を分かりやすく整理しました。
実は、大きく分けて「3つのグループ」を理解するだけで、実務の大部分をカバーすることができます。それでは、一緒に見ていきましょう。
1. 算術演算子:計算を自動化する
まずは、計算を行うための基本的な記号です。業務効率化において、特に「割り算の余り(Mod)」と「文字列の結合(&)」の活用頻度は非常に高いです。
| 記号 | 意味 | 使用例 | 結果 |
| + | 足し算 | 2 + 3 | 5 |
| – | 引き算 | 5 – 2 | 3 |
| * | 掛け算 | 4 * 2 | 8 |
| / | 割り算 | 10 / 2 | 5 |
| \ | 割り算(整数) | 10 \ 3 | 3 |
| Mod | 割り算の余り | 10 Mod 3 | 1 |
| ^ | 指数(◯乗) | 2 ^ 3 | 8 |
| & | 文字列結合 | “A” & “B” | “AB” |
請求書番号を作成する際などに、文字と日付を「&」でつなげる処理は非常に便利です。
「+」でも文字を繋げることはできますが、数値が含まれる場合に意図しない計算エラーを招く可能性があるため、文字の結合には必ず「&」を使うのがVBAの鉄則です。
2. 比較演算子:条件を判定する
次に、2つの値を比較して「正しい(True)か、正しくない(False)か」を判定する記号です。これらは「If文」などの条件分岐で主役となります。
| 記号 | 意味 | 使用例 | 判定 |
| = | 等しい | A = B | 同じならTrue |
| <> | 等しくない | A <> B | 違うならTrue |
| < | より小さい | A < B | Aが小さければTrue |
| > | より大きい | A > B | Aが大きければTrue |
| <= | 以下 | A <= B | AがB以下ならTrue |
| >= | 以上 | A >= B | AがB以上ならTrue |
| Like | 似ている | “A01” Like “A*” | パターン一致ならTrue |
「以上(>=)」「以下(<=)」を記述する際、イコール(=)は必ず右側に置きます。=< や => と書くとエラーになりますので、ここだけは注意して覚えておきましょう。
3. 論理演算子:条件を組み合わせる
最後は、複数の条件を「かつ(And)」や「または(Or)」でつなぎ、より複雑な判定を行うための記号です。
| 記号 | 意味 | 解説 |
| And | かつ | すべての条件が満たされた時だけTrue |
| Or | または | どれか一つの条件でも満たされればTrue |
| Not | ~ではない | 判定結果を反転させる(TrueをFalseに、FalseをTrueに) |
【コピペOK】実務で使える実践コード例
これらの演算子をどのように組み合わせるのか、営業成績の判定をイメージしたサンプルコードを用意しました。
実際にVBAエディタに貼り付けて、数値を書き換えながら動かしてみてください。
Sub CheckSalesPerformance()
' 変数の宣言
Dim sales As Long ' 売上金額
Dim goal As Long ' 目標金額
Dim profitRate As Double ' 利益率
Dim message As String ' 結果メッセージ
' テスト用の数値(ここを変えて遊んでみてください)
sales = 120000
goal = 100000
' 【算術演算子】利益率を計算
profitRate = (sales - 80000) / sales
' 【比較演算子】と【論理演算子】で判定
' 売上が目標以上(>=) かつ(And) 利益率が20%より大きい(>) 場合
If sales >= goal And profitRate > 0.2 Then
message = "目標達成かつ高利益です!"
' 売上が目標以上(>=) または(Or) 利益率がプラス(>0) の場合
ElseIf sales >= goal Or profitRate > 0 Then
message = "悪くありません。次は利益率も意識しましょう。"
Else
message = "残念ながら.要改善です。"
End If
' 【算術演算子(&)】結果を表示
MsgBox "判定結果: " & message
End Sub
おわりに
たくさんの記号をご紹介しましたが、すべてを一度に暗記する必要はありません。詳細な仕様をその都度確認しながらコードを書くのは珍しいことではありませんから。
普段使う記号の9割は今回紹介したものです。もし使い分けに迷ったら、よければまたこの記事を見にきて来てください。
何度も見返して実際に使っているうちに、自然と指が記号を覚えていくはずです。
一緒に、少しずつ楽していきましょう!
VBAを独学で学び、業務自動化に5年以上携わってきた私が、「本当に実務で役立った!」と感じた2冊を紹介します。 もう本選びで失敗したくない方は、よければ参考にしてみてください。

コメント