Close

IF文による条件分岐(Excel VBA)

VBAで条件分岐を行う場合、IF~End If文を用います。
IF~End Ifの中に条件を満たすときの処理を記述します。

まずシート内はこのようになっているとします。

e_0022

そこで以下のようなVBAを記述し、実行します。

Sub Sample1()
    Dim i As Integer
    
    For i = 1 To 5
        If Cells(i, 1).Value = "山" Then
            Cells(i, 1).Interior.Color = vbBlack
        End If
    Next
End Sub

以下のような結果になりました。

e_0023

最初の条件がFalseの場合、IF~Else~End Ifとして、
Elseの後に条件を満たさないときの処理を記述できます。

Sub Sample2()
    Dim i As Integer
    
    For i = 1 To 5
        If Cells(i, 1).Value = "山" Then
            Cells(i, 1).Interior.Color = vbWhite
        Else
            Cells(i, 1).Interior.Color = vbGreen
        End If
    Next
End Sub

以下のような結果になりました。

e_0024

IF~ElseIf~End Ifとすると、
最初の条件を満たさない場合の条件も記述できます。
If以下もElseIf以下も満たさない場合に
Elseの処理が行われます。

Sub Sample3()
    Dim i As Integer
    
    For i = 1 To 5
        If Cells(i, 1).Value = "山" Then
            Cells(i, 1).Interior.Color = vbRed
        ElseIf Cells(i, 1).Value = "川" Then
            Cells(i, 1).Interior.Color = vbYellow
        Else
            Cells(i, 1).Interior.Color = vbBlue
        End If
    Next
End Sub

以下のような結果になりました。

e_0025

 

Share on facebook
Share on twitter
Share on linkedin