Por lo general, una de las primeras cosas que hace cuando crea una macro es usar un comando que desactiva la actualización de la visualización de la pantalla. Esto se hace porque la macro se ejecutará más rápido cuando no tenga que actualizar la pantalla. Una vez hecho esto, una de las cosas más importantes que puede hacer es proporcionar retroalimentación al usuario para que no crea que su sistema se ha ido a almorzar.

Un método común de proporcionar retroalimentación es mediante el uso de la barra de estado. Usando VBA, esto se hace con una línea de código similar a la siguiente:

Application.StatusBar = "Updating past months..."

Esta línea hace que aparezca el mensaje Actualizando meses pasados ​​…​__ en la barra de estado del programa de aplicación. Este mensaje permanece allí hasta que se escribe otro mensaje en la barra de estado, ya sea por su macro o por Excel.

Si desea borrar el mensaje en la barra de estado, hay dos formas de hacerlo. La primera es escribir una cadena vacía en la barra de estado, como en el siguiente código:

Application.StatusBar = ""

En este caso, no hay nada entre las comillas, por lo que se muestra una cadena vacía en la barra de estado, borrando lo que estaba allí antes. El otro método es utilizar la siguiente línea:

Application.StatusBar = False

Escribir el valor lógico FALSE en la propiedad Application.StatusBar borra todo lo que escribió en la barra de estado antes y restaura el texto predeterminado de la barra de estado.

El uso de la barra de estado está muy bien, siempre que la barra de estado esté encendida. El usuario puede personalizar Excel de modo que la barra de estado esté apagada. Si se ha hecho esto, no podrá mostrar mensajes en la barra de estado. La solución es asegurarse de que la barra de estado esté encendida antes de intentar mostrar un mensaje.

Puede controlar la visualización de la barra de estado mediante la propiedad Application.DisplayStatusBar. Si establece esta propiedad en un valor lógico (VERDADERO o FALSO), activa o desactiva la barra de estado.

Como ejemplo de cómo programar este tipo de proceso, considere el siguiente código:

bStatusState = Application.DisplayStatusBar Application.DisplayStatusBar = True Application.StatusBar = "Updating past months..."

' ' Rest of program goes in here ' Application.StatusBar = False Application.DisplayStatusBar = bStatusState

La primera línea de este código asigna el valor actual de la barra de estado (VERDADERO o FALSO, es decir, encendido o apagado) a la variable bStatusState.

Esta misma variable se utiliza en la última línea para restablecer la condición de la barra de estado a su estado original. Entre tanto, se enciende la barra de estado y se muestra un mensaje que luego se borra.

ExcelTips es su fuente de formación rentable en Microsoft Excel.

Este consejo (2296) se aplica a Microsoft Excel 97, 2000, 2002 y 2003. Puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y posterior) aquí:

link: / excelribbon-Using_the_Status_Bar [Usando la barra de estado].