Estructuras de repetición

For … Next

La estructura For permite ejecutar un bloque de instrucciones un numero N de veces. Su forma general es:

For variable = expresion1 To expresion2 [Step expresion3] [Bloque]
Exit For [Bloque]
Next [variable]

Cuando se ejecuta un For, se asigna el valor de expresion 1 a variable y se comprueba si su valor es mayor o menor a expresion 2. En caso de ser menor se ejecuta el bloque de instrucciones, en caso de ser mayor el flujo de control sale del for y pasa la línea que está a continuación de Next.

Esto sucede en caso de ser la expresion 3 positiva. En caso contrario se ejecutarán las instrucciones cuando variable sea mayor que expresion 2. Una vez ejecutadas las instrucciones, la variable se incrementa en el valor de la expresion 3, o en 1 si Step no se especifica, volviéndose a efectuar la comparación entre variable y la expresion 2, y así sucesivamente.

La sentencia Exit For es opcional y permite salir de un bucle For… Next antes de que éste finalice.

Do … Loop

Esta estructura permite repetir la ejecución de bloque de instrucciones mientras una condición dada sea verdadera. La condición puede ser verificada antes o después de ejecutarse el bloque de instrucciones. Sus posibles formas son las siguientes:

Forma1:Do [{While/Until} condicion]
[BloqueA]
[Exit Do]
[BloqueB]
Loop
Formato 2: Do
[BloqueA] [Exit Do]
[BloqueB]
Loop [{While/Until}condicion]

La sentencia opcional Exit Do permite salir de un bucle Do… Loop antes de que finalice.

While … Wend

Esta estructura es otra forma de implementar ciclos de repetición mientras se cumpla la condición. Su estructura es la siguiente:

While condicion [BloqueA]
Wend

Fuente: Apuntes de Programación con lenguajes de cuarta generación de la FCA de la UNAM