Como usar a instrução For…Next no VBA?

A instrução `For…Next` no VBA é usada para criar loops que executam um bloco de código repetidamente por um número especificado de vezes. É ideal para iterar sobre uma série de números, como índices de um array, valores de uma lista ou simplesmente para repetir ações algumas vezes. Aqui está a sintaxe básica:

For contador = início To fim [Step incremento]
    ' Bloco de código a ser executado
Next contador
  • `contador` é uma variável que controla o loop. Ela é inicializada em `início` e incrementada até `fim`.
  • `início` é o valor inicial da variável do loop.
  • `fim` é o valor final até o qual o loop será executado.
  • `Step incremento` é opcional e define a quantidade pela qual `contador` é incrementado a cada iteração. Se omitido, o incremento padrão é 1.

Exemplo Simples

Este exemplo imprime os números de 1 a 5 na janela de depuração:

Sub ExemploForNext()
    Dim i As Integer
    For i = 1 To 5
        Debug.Print i
    Next i
End Sub

Exemplo com Step

No próximo exemplo, o loop conta de 1 a 10, mas pulando de 2 em 2:

Sub ExemploForNextComStep()
    Dim i As Integer
    For i = 1 To 10 Step 2
        Debug.Print i
    Next i
End Sub

Exemplo de Loop Decremental

Você também pode usar um valor negativo para `Step` para criar um loop decremental. Aqui está um exemplo que conta de 5 a 1:

Sub ExemploLoopDecremental()
    Dim i As Integer
    For i = 5 To 1 Step -1
        Debug.Print i
    Next i
End Sub

Notas Importantes

  • É possível sair de um loop `For…Next` antecipadamente usando a instrução `Exit For`.
  • Você deve garantir que as variáveis `início` e `fim` sejam inteiros ou tipos adequados para a operação pretendida.
  • Não é recomendável alterar o valor do `contador` dentro do bloco do loop, pois isso pode causar comportamentos inesperados.

Com essa estrutura, você pode facilmente iterar sobre coleções ou realizar operações repetidamente, facilitando a automação de tarefas no VBA.

Unlock Your Potential

Excel

Basic - Advanced

Access

Access Basic - Advanced

Power BI

Power BI Basic - Advanced

Help us grow the project