Repite un grupo de sentencias un número especificado de veces.
Sintaxis
For counter=start To end [Step step]
[statements]
[Exit For]
[statements]
Next
Argumentos:
Counter: variable numérica utilizada como contador de bucles. La variable no puede ser un elemento de matriz ni un elemento de un tipo definido por el usuario.
Start: valor inicial del contador.
End: valor final del contador.
Step: el contador de cantidad cambia cada vez que se ejecuta el bucle. Si no se especifica, step se define de forma predeterminada en uno.
Statements: una o más sentencias entre For y Next que se ejecutan el número especificado de veces.
Observaciones
El argumento step puede ser positivo o negativo. El valor del argumento step determina el procesamiento de bucle de la siguiente manera:
Table 11-33 Ejecuciones de bucle
| Valor | El bucle se ejecuta si |
|---|---|
| Positivo o 0 | contador <= fin |
| Negativo | contador >= fin |
Una vez que el bucle se inicia y todas las sentencias del bucle se han ejecutado, se agrega el paso al contador. En este punto, las sentencias del bucle se vuelven a ejecutar (basadas en la misma prueba que causó que el bucle se ejecutara inicialmente) o el bucle se cierra y la ejecución continúa con la sentencia que sigue a la sentencia Next.
Note:
Cambiar el valor del contador mientras está en un bucle puede dificultar la lectura y depuración del código.
Exit For solo se puede utilizar en una estructura de control For Each...Next o For...Next para proporcionar una forma alternativa de salir. Se puede colocar cualquier cantidad de sentencias Exit For en cualquier parte del bucle. Exit For se utiliza a menudo con la evaluación de alguna condición (por ejemplo, If...Then) y transfiere el control a la sentencia inmediatamente posterior a Next.
Puede anidar bucles For...Next colocando un bucle For...Next dentro de otro. Asigne a cada bucle un nombre de variable único como contador. La siguiente construcción es correcta:
Ejemplo 1:
For I = 1 To 10
For J = 1 To 10
For K = 1 To 10
Next
Next
Next
Ejemplo 2: pasos con valor positivo
Dim i
For i = 1 To 3 Step 2
'"Countdown: " & i
Next
'Output:
'Countdown: 1
'Countdown: 3
Ejemplo 3: pasos con valor negativo
Dim i
For i = 3 To 1 Step -2
'"Countdown: " & i
Next
'Output:
'Countdown: 3
'Countdown: 1