Declaración de VBA GoTo - ¿Cómo usar GoTo Statement en VBA?

Tabla de contenido

Declaración GoTo de Excel VBA

La instrucción VBA GoTo se usa cuando ocurre un error mientras se ejecuta el código en lugar de mostrar el error para reanudar la siguiente línea de código ignorando el mensaje de error. Hay dos tipos de instrucciones GOTO, una es para seleccionar cualquier rango de la hoja de trabajo en el libro de trabajo especificado y otra es el controlador de errores.

Para superar los errores anticipados en VBA, tenemos una función llamada "GOTO". Veremos ambos tipos de declaraciones GoTo en este artículo.

2 formas de usar la declaración GoTo en el código VBA

# 1 - Método Application.GoTo

Si desea ir al libro de trabajo específico o la hoja de trabajo específica en todos los libros de trabajo abiertos, podemos usar el método Application.GoTo de instrucción.

Veamos la sintaxis del método Application.GoTo

  • (Referencia): Esto no es más que una referencia de celda específica. Si la referencia no se proporciona de forma predeterminada, lo llevará al último rango de celdas utilizado.
  • (Desplazamiento): Esta es una declaración lógica de VERDADERO o FALSO. Si el valor es TRUE, se desplazará por la ventana. Si el valor es FALSO, no se desplazará por la ventana.
Ejemplo

Si desea ir a una celda específica en la hoja de trabajo específica, podemos usar el método Goto. Tengo 3 hojas llamadas Jan, Feb y Mar.

Si quiero ir a la celda C5 en la hoja de enero, usaré el siguiente conjunto de códigos.

Paso 1: Inicie el nombre de la macro de Excel.

Código:

Sub GoTo_Example1 () End Sub

Paso 2: Inicie el método " Application.GoTo "

Código:

Sub GoTo_Example1 ()

Aplicación.Goto

End Sub

Paso 3: En el argumento de referencia, debemos especificar el nombre de la hoja de trabajo, y en esa hoja de trabajo, debemos mencionar la celda específica.

Código:

Sub GoTo_Example1 () Application.Goto Reference: = Worksheets ("Jan"). Range ("C5") End Sub

Paso 4: menciona el pergamino como VERDADERO.

Código:

Sub GoTo_Example1 () Application.Goto Reference: = Worksheets ("Jan"). Range ("C5"), Scroll: = True End Sub

Paso 5: Ahora ejecute este código con la tecla F5, o también puede ejecutar este código manualmente, lo llevará a la hoja y celda especificadas.

Ahora cambiaré el argumento de desplazamiento a FALSO y veré el cambio que encontrará.

Sub GoTo_Example1 () Application.Goto Reference: = Worksheets ("Jan"). Range ("C5"), Scroll: = False End Sub

Si desea ir a un libro de trabajo específico, debe mencionar el nombre del libro de trabajo también antes del nombre del libro de trabajo.

Sub GoTo_Example1 () Application.Goto Reference: = Workbooks ("Book1.xlsx"). Worksheets ("Jan"). Range ("C5"), Scroll: = False End Sub

# 2 - Método de manejo de errores

Cuando la línea de código en particular encuentra un error, VBA deja de ejecutar el resto del código y muestra el mensaje de error.

Por ejemplo, mire la siguiente línea de código.

Sub GoTo_Example2 () Sheets ("Abril"). Eliminar Sheets.Add End Sub

El código anterior dice eliminar la hoja en abril y agregar una nueva hoja. En el libro de trabajo activo, si hay algún nombre de hoja llamado April, se eliminará o, de lo contrario, mostrará el cuadro de diálogo de mensaje de error a continuación.

Cuando ejecuté este código, mi libro de trabajo no tenía una hoja llamada April, por lo que el código VBA no pudo encontrar el nombre de la hoja y arroja el error. A veces debemos ignorar este error porque, a menudo, si no hay un nombre de hoja llamado April, entonces debemos continuar con las otras líneas de código.

Para eliminar este error, podemos utilizar el método GoTo como controlador de errores.

Ahora modificaré el código a medida que el error On pasa a la siguiente línea.

Sub GoTo_Example2 () En caso de error Ir a las hojas de NextLine ("abril"). Eliminar NextLine: Sheets.Añadir End Sub

Si ejecuta esto, agregará la nueva hoja aunque no haya un nombre de hoja llamado April.

La declaración "On Error GoTo NextLine" entiende que si ocurre algún error, saltará a la siguiente línea, y en la siguiente línea, el código VBA es agregar una nueva hoja.

Cosas para recordar

  • Si desea saltar a la siguiente línea cuando se produce el error, también puede utilizar la instrucción On Error Resume Next VBA.
  • Para saltar al siguiente, debe asegurarse de que se espera un error en esa línea de código en particular.
  • Si la línea importante del código salta con este controlador de errores, es posible que su tarea no se complete perfectamente.

Articulos interesantes...