Noticias

10 consejos prácticos para el editor de Visual Basic

  1. Software
  2. Oficina de Microsoft
  3. Excel
  4. 10 consejos prácticos para el editor de Visual Basic

Libro Relacionado

Macros de Excel para tontos

Por Michael Alexander

Si va a pasar tiempo trabajando con macros en Visual Basic Editor, ¿por qué no aprovechar algunas de las herramientas incorporadas que harán su trabajo más fácil? Estos consejos mejorarán enormemente su experiencia de programación de macros.

Aplicación de comentarios de bloqueo

Colocar un solo apóstrofe delante de cualquier línea de código le dice a Excel que omita esa línea de código. Esta técnica se llama comentar nuestro código. La mayoría de los programadores utilizan el apóstrofe único para crear comentarios o notas en el código, como se muestra aquí.

Un solo apóstrofe delante de cualquier línea convierte esa línea en un comentario.

A veces es beneficioso comentar varias líneas de código. De esta manera, puede probar ciertas líneas de código mientras le dice a Excel que ignore las líneas comentadas.

En lugar de pasar tiempo comentando una línea a la vez, puedes usar la barra de herramientas Editar para comentar un bloque entero de código.

Para activar la barra de herramientas Editar, vaya al menú VBE y seleccione View→Toolbars→Edit. Seleccione las líneas de código que desea comentar y, a continuación, haga clic en el icono Bloque de comentarios de la barra de herramientas Editar, como se muestra aquí.

Utilice la barra de herramientas Editar para aplicar comentarios a un bloque de código.

Copiar múltiples líneas de código

Puede copiar bloques enteros de código resaltando las líneas que necesita y, a continuación, manteniendo pulsada la tecla Ctrl mientras arrastra el bloque. Este viejo truco de Windows funciona incluso cuando se arrastra a través de los módulos.

Sabrá que está arrastrando una copia cuando el cursor muestre un símbolo más junto a ella, como se muestra aquí.


Ctrl-drag para crear una copia.

Salto entre módulos y procedimientos

Después de que su caché de código de macros empiece a crecer, puede ser una molestia moverse rápidamente entre módulos y procedimientos. Usted puede aliviar el dolor usando unas cuantas teclas de acceso rápido.

  • Presione Ctrl+Tab para moverse rápidamente entre los módulos.
  • Presione Ctrl+Página Arriba y Ctrl+Página Abajo para moverse entre los procedimientos dentro de un módulo.

Teletransporte a sus funciones

Al revisar una macro, es posible que encuentre una variable o un nombre de función que obviamente esté apuntando a alguna otra parte del código. En lugar de buscar en todos los módulos para encontrar de dónde proviene esa función o nombre de variable, puede simplemente colocar el cursor en esa función o nombre de variable y presionar Mayús+F2.

Como ilustra esta figura, usted es teletransportado instantáneamente al origen de esa función o nombre de la variable. Presionando

Ctrl+Mayús+F2 lo llevará de vuelta al punto de partida.


Presione Mayús+F2 en una función o nombre de variable para que se le lleve.

Mantenerse en el procedimiento correcto

Cuando sus módulos contienen varios procedimientos, puede ser difícil desplazarse por un procedimiento en particular sin tener que desplazarse inadvertidamente hacia otro procedimiento. A menudo se encontrará desplazándose hacia arriba y hacia abajo, tratando de volver a la pieza de código correcta.

Para evitar esta tontería, haga clic en el botón Vista de procedimientos en la esquina inferior izquierda de VBE, como se muestra aquí. Si lo hace, el desplazamiento se limita a sólo

el procedimiento en el que se encuentra.


Limite el desplazamiento al procedimiento activo.

Paso a paso a través de su código

Para avanzar a través de su código, necesita poner su macro en modo debug. Simplemente coloque el cursor en cualquier lugar de la macro y pulse la tecla F8.

En programación, el término depuración significa encontrar y corregir posibles errores en el código. Una de las herramientas de depuración más útiles es la capacidad de recorrer el código línea por línea. Cuando pasas por el código, estás viendo cómo se ejecuta cada línea

.

La primera línea de código se resalta y aparece una pequeña flecha en el margen izquierdo de la ventana de código, como se muestra aquí. Presione F8 nuevamente para ejecutar la línea de código resaltada y pasar a la siguiente línea. Siga pulsando F8 para ver cómo se ejecuta cada línea hasta el final de la macro.

Pulse F8 para desplazarse por cada línea de la macro.

Para salir del modo de depuración, vaya al menú VBE y elija Debug→Step Out.

Pasar a una línea de código específica

¿Qué pasa si quieres empezar a revisar tu código en una línea específica? Bueno, puedes hacerlo simplemente moviendo la flecha!

Cuando una línea de código está resaltada en modo debug, puedes hacer clic y arrastrar la flecha en el margen izquierdo de la ventana de código hacia arriba o hacia abajo, soltándola en cualquier línea de código que quieras ejecutar a continuación, como se muestra aquí.

Arrastre la flecha mientras recorre el código.

Código de parada en un punto predefinido

Cuando se establece un punto de interrupción, el código se ejecutará normalmente y luego se detendrá en la línea de código en la que se definió como punto de interrupción.

Esta técnica de depuración es muy útil cuando se desea ejecutar pruebas de pequeños bloques de código a la vez. Por ejemplo, si sospecha que puede haber un error en su macro, pero sabe que la mayoría de las macros se ejecutan sin problemas, puede establecer un punto de interrupción empezando por la línea de código sospechoso y luego ejecutar la macro. Cuando la macro alcanza su punto de interrupción, la ejecución se detiene. En este punto, puede presionar la tecla F8 de su teclado para ver como la macro ejecuta una línea a la vez.

Para establecer un punto de interrupción en el código, coloque el cursor donde desea que comience el punto de interrupción y, a continuación, pulse la tecla F9 del teclado. VBA marcará claramente el punto de ruptura con un punto en el margen izquierdo de la ventana Código, y la línea de código en sí misma será de color granate.


Un breakpoint se marca con un punto y un texto sombreado.

Cuando su macro alcanza un punto de interrupción, se pondrá efectivamente en modo de depuración. Para salir del modo debug, puede ir al menú VBE y seleccionar Debug →Step Out.

Visualización de los valores iniciales y finales de las variables

Si pasa el ratón por encima de una variable String o Integer en VBA mientras está en modo debug, puede ver el valor de esa variable en un tooltip. Esta característica le permite ver los valores que se están pasando dentro y fuera de las variables, lo que es útil cuando se depura el código.

Sin embargo, los tooltips pueden contener sólo 77 caracteres (incluyendo el nombre de la variable), así que si el valor de la variable es demasiado largo, se corta. Para ver más allá de los primeros 77 caracteres, simplemente mantenga presionada la tecla Ctrl mientras pasa el ratón por encima.

A continuación se muestra cómo se ve el tooltip

cuando se pasa el ratón por encima de una variable en modo depuración.


Los caracteres de inicio y final en un tooltip variable.

Desactivar la comprobación automática de sintaxis

Muchas veces, mientras trabajas en algún código, encontrarás que necesitas ir a otra línea para copiar algo. No has terminado con la línea; sólo necesitas dejarla por un segundo. Pero VBE te detiene inmediatamente con un mensaje de error, similar al que se muestra aquí, advirtiéndote sobre

algo que ya sabes.


Una línea de código sin terminar resulta en un mensaje de error.

Estos cuadros de mensaje le obligan a detener lo que está haciendo para confirmar el error pulsando el botón Aceptar. Después de medio día de estas cajas de mensajes abruptos, estará listo para tirar su computadora contra la pared.

Bueno, puede guardar su ordenador y su cordura desactivando la comprobación automática de sintaxis. Vaya al menú VBE y elija Tools→Options. Aparece el cuadro de diálogo Opciones, que muestra la ficha Editor. Desactive la opción Comprobación automática de sintaxis para detener estos molestos

mensajes de error.


Evite los mensajes de advertencia durante la codificación.

No se preocupe por perderse un error legítimo. Su código se volverá rojo si comete un error, lo que indica visualmente que algo anda mal.

Join The Discussion