VBA – Saída de Loop For
No VBA, você pode sair de um For Loop usando o comando Exit For.
Exit For
Quando a execução do código chegar ao Exit For, ele sairá de um loop For e continuará com a primeira linha após o loop.
Se você quiser saber como sair de um loop Do, clique neste link: VBA Saída de Loop.
Sair de um Loop For Quando uma Condição é Atendida
Você verá no exemplo como sair de um Loop For quando uma determinada condição for atendida. Faremos um loop e incrementaremos o valor da variável i em 1 a cada iteração. Quando chegar a 5, queremos sair do loop e retornar uma caixa de mensagem. Aqui está o código:
Dim i As Integer
For i = 1 To 10
If i = 5 Then
Exit For
End If
Next i
MsgBox "O valor é " & i
Primeiro, entramos no Loop For se o valor de i for menor que 10:
For i = 1 To 10
Next i
Depois disso, verificamos se o valor de i é igual a 5, usando o comando If. Se o valor for 5, saímos do Loop For e vamos para a primeira linha após o loop:
If i = 5 Then
Exit For
End If
Se a condição não for atendida, a instrução a seguir aumenta i em 1 e entra no Loop For novamente:
Next i
A primeira linha do código que será executada após a saída do Loop For é a caixa de mensagem com o valor de i:
MsgBox "O valor é " & i
Se você executar esse código no modo de depuração, verá que ele percorrerá o loop 5 vezes. Na quinta iteração, o valor da variável i se torna 5 e o código entra no corpo If. Agora o corpo do Loop For é encerrado. Depois disso, a MsgBox é exibida com o valor de i:
Imagem 1. Exemplo de Exit For Loop