Excel VBAのIF文のサンプル

ExcelのVBAのIF文のサンプルです。

目次

if文

If (条件)  Then
  処理
ElseIf (条件)  Then
  処理
Else
  処理
End If
  • 条件がtrueの場合、配下の処理が実行され、if文の処理は終了します。
  • 条件がfalseの場合、配下の処理は実行されず、その下(ElseIf/Else)に進みます。
  • ElseIf は1つ以上記述できます。省略可。
  • Elseの配下の処理は、どの条件もtrueでなかったときに実行されます。
  • Elseは1つのみ記述できます。省略可。

コード

サンプルのコードです。
8,9行目のElseIfの条件式を満たすので5が表示されます。
9行目のようにネスト構造も可能です。

Sub test1()
    Dim num As Integer
    num = 5
    
    If num > 10 Then
        MsgBox "10より大きい"
        
    ElseIf num > 1 Then
        If num = 5 Then
            MsgBox "5" ' 5が表示される
        End If
            
    Else
        MsgBox "それ以外"
            
    End If
End Sub

比較演算子

上記コードの=は比較演算子です。

比較演算子は、2つの値を比べて真偽値(true/false)を返します。
条件を満たしていればtrue,そうでない場合はfalseです。

比較演算子 説明
a = b aとbの値は等しい
a <> b aとbの値は等しくない
a > b aはbより大きい
a >= b aはbより大きい または 等しい
a < b aはbより小さい
a <= b aはbより小さい または 等しい

And演算子

If文でAND演算子を使用する場合、
AND演算子の左の式と右の式の両方が条件に合致する場合にtrueになります。

コード

5行目は、1より大きく10より小さい場合にtrueになります。
→OKが表示されます。

Sub test1()
    Dim num As Integer
    num = 7
    
    If (num > 1) And (num < 10) Then
        MsgBox "OK" 'OKが表示される
            
    Else
        MsgBox "NG"
            
    End If
End Sub

Or演算子

If文でOR演算子を使用する場合、
OR演算子の左の式または右の式のどちらかが条件に合致する場合にtrueになります。

コード

5行目は、1または2の場合にtrueになります。
→OKが表示されます。

Sub test1()
    Dim num As Integer
    num = 2
    
    If (num = 1) Or (num = 2) Then
        MsgBox "OK" 'OKが表示される
            
    Else
        MsgBox "NG"
            
    End If
End Sub

関連の記事

Excel VBAのSelect Case文のサンプル
Excel VBAのFor文のサンプル
Excel VBAのDo Loop文のサンプル
Excel VBAのFor Each文のサンプル
Excel VBAの変数の宣言を強制するサンプル
Excel VBAのデータ型
Excel VBA セルを指定して値を設定/取得するサンプル
Excel VBA セルの値をテキストに出力するサンプル



△上に戻る