Fin de VBA

En VBA, para finalizar TODA la ejecución del código, use el Fin mando.

1 Fin

Cuando la ejecución del código llega a Fin, finalizará inmediatamente la ejecución y abandonará el programa.

Si desea aprender cómo salir de un Sub en caso de error, haga clic en este enlace: VBA On Error Exit Sub

Si desea aprender cómo salir de una función o sub, haga clic en este enlace: VBA Exit Sub o función

Salir de todo el código en VBA

Verá en el ejemplo lo que sucede cuando usamos el Fin comando en VBA. Creamos un Sub EndSub, que tiene el Fin comando adentro. Este Sub se llama desde CallEndSub. Aquí está el código:

123456789101112131415161718 Sub privado EndSub ()Dim i como enteroPara i = 1 a 10Si i = 5 EntoncesMsgBox "El valor de i es" & iFinTerminara siSiguiente yoEnd SubSub Llamada privadaEndSub ()Llamar EndSubMsgBox "End Sub"End Sub

En el EndSub, primero ingresamos el bucle For si el valor de i es menor que 10:

123 Para i = 1 a 10Siguiente yo

Después de eso, verificamos si el valor de i es igual a 5, usando el comando If. Si el valor es 5, devolvemos el cuadro de mensaje con el valor de i y usamos el comando Fin.

1234567 Si i = 5 EntoncesMsgBox "El valor de i es" & iFinTerminara si

Si no se cumple la condición, la siguiente declaración aumenta i en 1 y vuelve a entrar en el ciclo For:

1 Siguiente yo

En el CallEndSub, primero llamamos al Sub EndSub:

1 Llamar EndSub

Después de eso, regresamos el cuadro de Mensaje:

1 MsgBox "End Sub"

Si ejecuta el CallEndSub, primero llamará al EndSub. Si ejecuta este código en el modo de depuración, verá que pasará por el bucle 5 veces. En el 5th iteración, el valor de la variable i se convierte en 5 y el código entra en el cuerpo If. Ahora el MsgBox "El valor de i es" & i se ejecuta y Fin después:

Imagen 1. Fin de VBA

Como puede ver, la ejecución del código se detiene justo después de la Fin comando, entonces el MsgBox "End Sub" nunca se ejecuta.

wave wave wave wave wave