Uso de la propiedad StatusBar en vba Excel

El objeto Application, el cual se refiere a Excel como aplicación, entre sus tantas propiedades tenemos la de StatusBar, la cual puede usarse como un perfecto auxiliar visual al momento de que ejecutamos nuestra macros, ya que muestra un texto definido o variable en la barra de estado de Excel.

Cómo funciona ??

La barra de estado acepta sólo texto, por lo tanto podremos asignarle cualquier valor alfanumérico. StatusBar es una propiedad de Application, así que si tecleamos el nombre del objeto y terminamos con un punto, saldrán todas las propiedades y métodos, incluido la que nos compete.

Imagen de ejemplo

image

Ejemplos

Antes de ver los ejemplos, te comento que muchos programadores utilizan esta propiedad aunada a la propiedad ScreenUpdating, para mostrar el progreso de sus macros sin tener que mostrar todos los pasos de la macro.

Sub LiberarBarraDeEstado()
'Nos permite dejar lista la barra de estado para asignarle nuevos valores
'y/o dejarle el contro a Excel.
Application.StatusBar = False
End Sub
Sub PonerTextoEnBarraDeEstado()
'Definimos una cadena de texto para que se muestre en la barra de estado.
Dim MiValor As String
MiValor = "Ejemplo de texto en barra de estado"
Application.StatusBar = MiValor
End Sub
Sub PonerAlfaNumericoEnBarraDeEstado()
'Definimos una operación matemática para que se muestre en la barra de estado.
Dim Valor1 As Integer, Valor2 As Integer, Resultado As Integer
Dim Texto As String
Valor1 = 10
Valor2 = 40
Resultado = Valor1 + Valor2
Texto = "La suma de " & Valor1 & " y  " & Valor2 & " es igual a " & Resultado
Application.StatusBar = Texto
End Sub
Sub MostrarNombreHojaYArchivo()
'Se mostrará el nombre del archivo y de la hoja activa. Aquí los datos son variables.
Dim NombreArchivo As Variant, NombreHoja As Variant
NombreArchivo = Application.ThisWorkbook.Name
NombreHoja = Application.ActiveSheet.Name
Texto = "Mi archivo se llama " & NombreArchivo & " y la hoja activa se llama " & NombreHoja
Application.StatusBar = Texto
End Sub

You may also like...