¿cómo utilizar vba exit sub en excel?
VBA Exit Sub es una declaración que se utiliza para salir de un subprocedimiento o función. Como sabe, cada línea es una macro que se ejecuta una tras otra, y cuando agrega el VBA «Exit Sub», salga del procedimiento sin ejecutar el resto del código que viene después. Esto funciona mejor con bucles y el cuadro de mensaje .
Usando la subsentencia de salida en VBA
- Primero, decida en qué línea desea agregar el «Sub de salida».
- Después de eso, verifique la estructura del código que se ejecutará cuando ejecute el código .
- A continuación, ingrese «Salir Sub».
- En última instancia, es mejor tener un comentario que describa por qué está utilizando la declaración «Salir de Sub».
Nota: En un procedimiento de función de VBA, la declaración que debe utilizar es «Salir de función».
Utilice Exit Sub con un cuadro de mensaje y un cuadro de entrada
Suponga que desea obtener información del usuario con un cuadro de entrada y salir del procedimiento si la respuesta del usuario no es un número (considere el siguiente ejemplo).
En el código anterior tiene ISNUMERIC que verifica el valor ingresado en el cuadro de entrada si es un número o no, y si ese valor no es un número, usa la instrucción de salida Sub para completar el procedimiento después de mostrar un cuadro de mensaje.
Sub vba_exit_sub_example() If IsNumeric(InputBox("Enter your age.", "Age")) = False Then MsgBox "Error! Enter your Age in numbers only." Exit Sub Else MsgBox "Thanks for the input." End If End Sub
En caso de error Salir Sub
Una de las mejores cosas de «Salir Sub» es que puedes usarlo para salir del procedimiento cuando ocurre un error. A continuación se muestra el código que divide un número por cero, lo que devuelve un «Error de tiempo de ejecución ’11′» y detiene la ejecución.
Aquí puede utilizar la instrucción GoTo para crear un controlador de errores con «Exit Sub» para salir del procedimiento (considere el siguiente código).
Sub vba_exit_sub_on_error() On Error GoTo iError Range("A1") = 10 / 0 iError: MsgBox "You can't divide with the zero." & _ "Change the code." Exit Sub End Sub
En el código anterior tiene un controlador de errores, «iError» con un cuadro de mensaje, luego la declaración «Salir de Sub». Cuando se produce un error durante el cálculo, la instrucción goto pasa al controlador de errores ( VBA Error Handling ) y sale del procedimiento.