VBA Salida de Bucle Do… Loop
En VBA, puedes salir de un bucle Do usando el comando Exit Do.
Exit Do
Cuando la ejecución del código llega a Exit Do, el código saldrá del bucle Do y continuará con la primera línea después del bucle. Si quieres aprender a salir de un bucle For, haz clic en este enlace: VBA Exit For
Salir de un bucle cuando se cumple una condición
En el siguiente ejemplo verás cómo salir de un bucle Do cuando se cumple una determinada condición. Haremos un bucle e incrementaremos el valor de la variable i en 1 en cada iteración. Cuando llegue a 6, queremos salir del bucle y devolver un cuadro de mensaje. Este es el código:
Sub bucleDo()
Dim i As Integer
Do While i < 10
i = i + 1
If i = 6 Then
Exit Do
End If
Loop
MsgBox "El valor es " & i
End Sub
Primero, entramos en el bucle Do si el valor de i es menor que 10:
Do While i < 10
Loop
En el cuerpo del bucle, incrementamos el valor de i en 1:
i = i + 1
Después comprobamos si el valor de i es igual a 6, utilizando el comando If. Si el valor es 6, salimos del bucle Do y pasamos a la primera línea después del bucle:
If i = 6 Then
Exit Do
End If
La primera línea del código que se ejecutará después de salir del bucle Do es el cuadro de mensaje con el valor de i:
MsgBox "El valor es " & i
Si ejecuta este código en Modo Depuración, verá que pasará por el bucle 6 veces. En la 6ª iteración, el valor de la variable i se convierte en 6 y el código entra en el cuerpo del If. Ahora se sale del cuerpo del bucle Do. Después de eso, el MsgBox aparece con el valor de i:
VBA Coding Made Easy
Stop searching for VBA code online. Learn more about AutoMacro - A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users!Learn More!