Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Logo Excel Avanzado

Tipos de errores en VBA

| 1 comentario

No todas las cosas funcionan bien a la primera, es muy probable que te encuentres con errores al programar. En Visual Basic, existen dos tipos de errores: errores de sintaxis y errores en tiempo de ejecución.

ERRORES DE SINTAXIS 

Son los que aparecen mientras se escribe un código erróneo con el lenguaje VBA, es decir, cuando intentamos hacer algo que no está permitido. Este tipo de errores son los más fáciles de localizar, ya que el editor de VBA está configurado para avisarnos en el momento en que encuentra un error.

Ejemplo:

Este error surge cuando intentamos insertar algún operador o alguna instrucción de VBA en un lugar que no le corresponde.

En este caso se intentó usar la palabra NEXT en lugar del tipo de dato de la variable. Por eso se muestra un mensaje de error. 

Tipos de errores en VBA

En este caso se ha utilizado una palabra que no pertenece al lenguaje VBA. Confundiendo la instrucción Mod (módulo) y se ha colocado la palabra Mud.

Tipos de errores en VBA

 

ERRORES EN TIEMPO DE EJECUCIÓN

Son los que ocurren solo después de compilar y ejecutar el código e intenta hacer alguna acción que no está permitida por Excel. Esto ocasionará que nuestra aplicación colapse o que Excel deje de responder. Este tipo de errores son más difíciles de encontrar pero aun así se podrán encontrar algunos de ellos al hacer pruebas y depuración de nuestra aplicación. 

Ejemplo: 

En este caso, se escribió correctamente las primeras líneas del código, pero la hoja donde se reemplazará los datos no existe (Sheets “Tabla”), por lo que no se puede ejecutar la macro 

Tipos de errores en VBA

Por Yanet Cruz M.

Un comentario

  1. Buenas tardes. Hice una macro para exportar una hoja de excel a pdf usanfo el método ExportAsFixedFormat. Si tengo el pdf abierto me da un error donde me dice que no se guardo el ocumento. he intentado alternativas con on error goto... pero no me funciona.

Deja una respuesta

Los campos requeridos estan marcados con *.