Excel VBA - ループの終了

内部の条件が満たされたときに、forループを終了させたいのですが。ifの条件が満たされたときに、forループを終了させるにはどうしたらいいでしょうか?私は、if`文の最後に何らかの出口があると思いますが、どのように機能するのかわかりません。

Dim i As Long
For i = 1 To 50
    Range("B" & i).Select
    If Range("B" & i).Value = "Artikel" Then
        Dim temp As Long
        temp = i
    End If
Next i
Range("A1:Z" & temp - 1).EntireRow.Delete Shift:=xlToLeft
ソリューション

ループを早期に終了させるには、Exit Forを使います。

If [condition] Then Exit For`(もしも条件が満たされたら)。

解説 (1)

Forループを早期に終了させるもう一つの方法は、ループカウンタを変更することです。

For i = 1 To 10
    If i = 5 Then i = 10
Next i

Debug.Print i   '11

For i = 1 To 10
    If i = 5 Then Exit For
Next i

Debug.Print i   '5
解説 (2)