Depuración y Errores de Macros
Comencemos con el articulo del Curso Basico de VBA - Depuración y Errores de Macros:
El tema de hoy es de mucha importancia, pero antes de empezar te invito a que veas el tema anterior, es importante seguir la secuencia de cada tema para entender el siguiente.
Y para eso tan solo pulsa clic aquí y lee el tema anterior, una vez termines de leer, regresa nuevamente aquí y continua con el tema de hoy.
Vamos a comenzar con el tema de hoy y para eso te invito a que te concentres muy bien en este tema, ya que conocerás cuales son los Tipos de Errores de macros y como Depurarlos.
Depuración y Errores de Macros
Es común que cuando ejecutamos una Macro la misma tenga algún error. Los errores pueden ser Errores de Tipeo o estructuras mal escritas.
Además, el Editor de Macros tiene un Autocontrol que permite corregir estos errores comunes.
Veamos algunos casos - Errores de Macros :
En este primer ejemplo utilizaremos una Macro sencilla cuya única función es seleccionar la celda A2.
Si escribimos correctamente la Macro, el Editor asigna automáticamente los colores azules, lo que significa que ha reconocido la estructura Sub() - End Sub.
Ejemplo:
'Esta macro selecciona la celda A2
Sub Macro()
Range("A2").Select
End Sub
Y si las instrucciones están bien escritas el editor convierte automáticamente las mayúsculas y asigna los colores azules a las estructuras reconocidas y verde a los comentarios.
Las estructuras reconocidas son aquellas que siempre se deben respetar y se explican mejor en los siguientes temas "Estructuras".
Si cometiéramos un error al referirnos al objeto "Range" y por ejemplo olvidáramos poner la comilla luego del 2, al dar "Enter" a dicha línea aparecería un mensaje de error y la línea se pintaría automáticamente de rojo, como se ve a continuación.
Ejemplo 1 de Errores de Macros
Cuando sucede esto aparece un aviso que nos indica el error cometido. Si vemos que la línea está roja es señal que debemos corregir algo (Usualmente falta o sobra algún carácter).
Bien, en nuestro caso, hemos olvidado poner la comilla (El Objeto Range siempre requiere que la celda esté entre comillas y luego entre paréntesis).
Veamos otro Error de Tipeo, en ese caso escribimos erróneamente "Sab", en lugar de "Sub". A pesar que no aparecerá ningún mensaje de error, vemos que el editor no ha pintado de azul la palabra "Sab".
Sab Macro()
Range("A2").Select
End Sub
Al intentar ejecutar esta Macro no sucederá nada, porque no se ha respetado la estructura de Sub() - End Sub con la que debe comenzar y finalizar una Macro respectivamente.
Luego en otras ocasiones, la Macro arrastra un error pero el mismo no aparece hasta ejecutarla.
Veamos el caso de la siguiente Macro, al escribirla no ha generado error y ninguna línea se ha pintado de rojo. Sin embargo, al ejecutarla sí aparece un error.
Ejemplo 2 de Errores de Macros
El error que aparece al ejecutarla es un aviso que indica:
"Error de compilación: Bloque If sin End If"
Al hacer clic en aceptar, la Macro queda en "Modo Interrupción", lo que significa que todo queda en pausa y no se podrán ejecutar nuevas Macros (El modo de interrupción se identifica porque el nombre de la Macro queda resaltado en amarillo).
Lo que debemos hacer en esta instancia es salir de modo interrupción desde el mismo editor, Menú "Ejecutar" > "Reestablecer". Luego procedemos a corregir la Macro, en este caso el mensaje fue claro:
La estructura estaba incompleta, nos faltó el End If (Existe una estructura If - End If que se explica mejor en los siguientes temas "Estructuras").
Una vez que se ha interrumpido la Macro, tenemos la opción de ejecutarla paso a paso (O línea por línea) y así determinar en qué línea está el error.
Este lo puedes hacer posicionándote en la primera fila de la Macro y luego presionar la Tecla F8. De esta forma se irá resaltando con amarillo y ejecutando cada fila, hasta que llegues a la que produce el error.
También puedes hacerlo desde la opción del Menú "Depuración" > Paso a paso por instrucciones.
Muy bien, hemos concluido con este tema, no olvides repasar nuevamente este tema. Es vital que tengas la habilidad de reconocer la ubicación y los tipos de errores.
Si te ha gustado el tema de hoy, te invito a que lo compartas con tus amigos de Facebook pulsando clic en el botón compartir:
Para Finalizar con Errores de Macros :
Me gustaría saber que piensas de este articulo "Programar en Excel - Depuración y Errores de Macros".
Por lo tanto:
Déjame tu comentario con dudas, críticas constructivas y sugerencia en la sección de comentarios o bien en el Chat. Al mismo tiempo te invito a que visites nuestra pagina de Facebook, pulsando clic aquí.
Cualquier duda o pregunta, puedes escribirme directamente en la sección de comentarios, en la pagina del chat, directamente en whatsapp o bien al correo electrónico rogerperez@aplicaexcelcontable.com.
Te saluda,
Roger Perez – Aplica Excel Contable