Error de compilación de VBA

Este tutorial explicará qué significa un error de compilación de VBA y cómo ocurre.

Antes de ejecutar su código, VBA Editor compila el código. Esto básicamente significa que VBA examina su código para asegurarse de que todos los requisitos están ahí para ejecutarlo correctamente; verificará que todas las variables estén declaradas (si usa Option Explicit, que debería), verifique que todos los procedimientos estén declarados. , verifique los bucles y las declaraciones if, etc. Al compilar el código, VBA ayuda a minimizar cualquier error de tiempo de ejecución que ocurra.

(Consulte nuestra Guía de manejo de errores para obtener más información sobre los errores de VBA)

Variables no declaradas

Si no declara variables, pero su Option Explicit está activada en la parte superior de su módulo, y luego ejecuta la macro, se producirá un error de compilación.

Si hace clic en Aceptar, el procedimiento correspondiente pasará al modo de depuración.

Alternativamente, antes de ejecutar su código, puede forzar una compilación del código.

En el Menú, Seleccione Depurar> Compilar proyecto.

El compilador encontrará cualquier error de compilación y resaltará el primero que encuentre en consecuencia.

Procedimientos no declarados

Si su código se refiere a un procedimiento que no existe, también obtendrá un error de compilación.

Por ejemplo:

1234 Sub CallProcedure ()'algo de código aquí entoncesLlamar al siguiente procedimientoEnd Sub

Sin embargo, si el procedimiento - SiguienteProcedimiento no existe, se producirá un error de compilación.

Codificación incorrecta: finalización prevista de la declaración

Si crea un bucle usando Para … Cada … Siguiente o Con … terminar con y olvídate y el próximo o la Terminar con… también obtendrá un error de compilación.

123456 Sub CompileError ()Dim wb como libro de trabajoDim ws como hoja de trabajoPara cada ws en wbMsgBox ws.NameEnd Sub

Lo mismo sucederá con una instrucción If si se omite End If.

Referencias faltantes

Si está usando una biblioteca de objetos que no es parte de Excel, pero está usando los objetos de la biblioteca en su declaración de variable, también recibirá un error de compilación.

Esto se puede resolver mediante Enlace tardío, declarando que las variables son Objetos; o agregando el relevante Biblioteca de objetos al Proyecto.

En el Menú, Seleccione Herramientas> Referencias y agregue la biblioteca de objetos relevante a su proyecto.

Va a ayudar al desarrollo del sitio, compartir la página con sus amigos

wave wave wave wave wave