Excel VBA では、条件分岐や値の判定に「比較演算子」を使います。その中でも頻繁に使われるのが >= です。
この演算子は、「左辺の値が右辺以上かどうか(大なりイコール)」を判断するために使います。
本記事では、VBA における >= 演算子の基本的な使い方、使用例、注意点をわかりやすく解説します。
目次
■ 1. >= とは?
>= は 「以上(greater than or equal to)」 を意味する比較演算子です。
✅ 基本構文
If 値1 >= 値2 Then
' 条件が真(True)の場合の処理
Else
' 偽(False)の場合の処理
End If
✅ 判定ルール
| 条件式 | 判定結果 |
|---|---|
100 >= 50 | True |
100 >= 100 | True |
100 >= 150 | False |
■数値での使用例
Sub CheckScore()
Dim score As Integer
score = Range("A1").Value
If score >= 80 Then
MsgBox "合格です!"
Else
MsgBox "不合格です"
End If
End Sub
📌 A1セルの点数が80点以上なら「合格」、未満なら「不合格」を表示します。
■日付での使用例
Sub CheckDeadline()
Dim today As Date
today = Date
If today >= #2024/12/31# Then
MsgBox "締切日を過ぎています。"
Else
MsgBox "まだ期限内です。"
End If
End Sub
📌 現在の日付が指定日(ここでは2024年12月31日)以降かどうかを判定。
■文字列でも使用できる?
VBA では文字列同士の比較にも >= を使えますが、アルファベット順(辞書順)で評価されます。
Sub CompareStrings()
If "Zebra" >= "Apple" Then
MsgBox "Zebra は Apple より後"
Else
MsgBox "Zebra は Apple より前"
End If
End Sub
📌 アルファベット順で「Zebra」が「Apple」より後なので、True。
⚠ 文字列比較は大文字・小文字の扱いに注意(Option Compare による)
■他の比較演算子との違い
| 演算子 | 説明 | 例 (A = 100) |
|---|---|---|
= | 等しい | A = 100 → True |
<> | 等しくない | A <> 100 → False |
> | より大きい | A > 80 → True |
< | より小さい | A < 120 → True |
>= | 以上 | A >= 100 → True |
<= | 以下 | A <= 100 → True |
■複数条件と組み合わせる
>= は And や Or と組み合わせることで、複数の条件を同時に判定できます。
✅ 例:80点以上かつ出席回数が10回以上なら合格
Sub EvaluateStudent()
Dim score As Integer
Dim attendance As Integer
score = Range("B2").Value
attendance = Range("C2").Value
If score >= 80 And attendance >= 10 Then
MsgBox "合格です!"
Else
MsgBox "条件未達成です"
End If
End Sub
📌 条件が2つ以上でも、>= を使って比較できます。
>= 使用時の注意点
比較対象は同じ型に揃えるのが基本(数値 vs 文字列などは予期せぬ結果に)
空白セルとの比較は False になる(特に数値との比較)
文字列の比較は環境(大文字小文字・言語)によって結果が変わる場合あり
■まとめ
| 項目 | 内容 |
|---|---|
| 演算子名 | >=(大なりイコール) |
| 意味 | 左辺が右辺 以上(Greater than or equal) |
| 使用場面 | 数値の判定、日付の比較、文字列の順序比較 |
| 組み合わせ | If 文、And / Or 条件式と併用可能 |
| よくある用途 | 点数評価、期日チェック、ランキング処理など |