VBAで条件分岐を行う場合、IF~End If文を用います。
IF~End Ifの中に条件を満たすときの処理を記述します。
まずシート内はこのようになっているとします。
そこで以下のような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
以下のような結果になりました。
最初の条件が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
以下のような結果になりました。
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
以下のような結果になりました。