Come visualizzare un messaggio sulla barra di stato di Excel VBA Usare
La barra di stato in Excel può essere utilizzata come monitor del codice. Quando il tuo codice VBA è lungo e svolgi diverse attività utilizzando VBA, spesso disabiliti l’aggiornamento dello schermo in modo da non vedere lo sfarfallio dello schermo. Ma a causa di ciò, non puoi sapere cosa sta succedendo nel tuo codice.
Se non sai dove si trova la barra di stato in Excel, eccola qui:
È possibile utilizzare una barra di stato di Excel per ottenere informazioni da Excel senza interferire con l’esecuzione del codice. Puoi visualizzare le fasi del tuo Marco sulla barra di stato o usarlo come barra di avanzamento.
Codice VBA per visualizzare i messaggi sulla barra di stato di Excel
Application.StatusBar = "Message"
StatusBar è una proprietà dell’oggetto Application che accetta il testo come input.
In questo esempio, sto solo mostrando quale funzione è in esecuzione …
Sub DisplayMessageOnStatusBar() Application.ScreenUpdating = False Application.StatusBar = "Calling function one " ' call function_1 Application.Wait (Now + TimeValue("00:00:2")) Application.StatusBar = "Calling function two" 'Call function_2 Application.Wait (Now + TimeValue("00:00:2")) Application.StatusBar = "Calling function Three" 'Call function_3 Application.Wait (Now + TimeValue("00:00:2")) Application.StatusBar = "" Application.ScreenUpdating = True End Sub
In questo esempio, l’aggiornamento dello schermo è impostato su False all’inizio.
Ora, prima di chiamare la funzione_1, sto visualizzando un messaggio che sta chiamando la funzione uno.
Application.Wait (Now + TimeValue (“00: 00: 2”)) questa riga di codice serve solo per simulare una lunga chiamata di funzione in modo da avere 2 secondi per vederlo sulla barra di stato.
L’ho fatto prima di tutte le chiamate di funzione e alla fine ho impostato la barra di stato su vuota (“”).
I messaggi della barra di stato sono molto utili per visualizzare i messaggi mentre si lavora con codice lungo. Quando il codice attraversa più fasi o esegue un ciclo lungo, è possibile visualizzarlo sulla barra di stato in modo che l’utente sappia che il codice è in esecuzione. In caso contrario, l’utente potrebbe pensare che il sistema si sia bloccato o qualcosa del genere.
Ora puoi ottenere in modo intelligente informazioni sulla barra di stato utilizzando VBA di Excel 2016, 2013, 2010 e 2007 utilizzando questa riga.
OLD POST
_ Alcune macro / codici vba richiedono molto tempo per eseguire o eseguire le azioni richieste. Se hai disattivato l’aggiornamento dello schermo utilizzando la riga Application.ScreenUpdating = False all’inizio del codice, se un utente esegue il codice, non saprà cosa sta succedendo e penserà che il sistema informatico non risponde. chiedere al codice di visualizzare un messaggio di stato sulla barra di stato in modo che l’utente sia informato sullo stato corrente del codice ._
Ecco un semplice codice che fornisce una finestra di messaggio che mostra i valori nella colonna A a partire dalla riga 2 fino all’ultima riga. La barra di stato mostrerà il messaggio “Macro in esecuzione” mentre il codice è in esecuzione, e una volta terminato il codice, mostrerà “Pronto”, che è uno dei messaggi Excel predefiniti.
Option Explicit Sub macro1() Dim i As Long, lrow As Long Application.ScreenUpdating = False Application.DisplayAlerts = False Application.DisplayStatusBar = True With Worksheets(“Sheet1”) lrow = .Range(“A” & .Rows.Count).End(xlUp).Row For i = 2 to lrow Application.StatusBar = “Macro running” Msgbox .Range(“A” &i).Value Next i End With Application.StatusBar = “” Application.ScreenUpdating = True Application.DisplayAlerts = True End Sub
Per copiare il codice sopra nel tuo file, * Premi Alt + F11 sulla tastiera.
-
Sul lato sinistro, vedrai gli oggetti di Microsoft Excel.
-
Fare clic con il tasto destro e selezionare Inserisci.
-
Quindi fare clic su Modulo.
-
Copia il codice nella finestra del codice a destra.
Puoi vedere il codice pubblicato nel modulo sottostante –
Ora capiamo cosa fa ogni riga del codice – Quindi prima impostiamo DISPLAYSTATUSBAR su true e poi impostiamo il messaggio per la barra di stato. Una volta che usiamo _Application.StatusBar = “” _ alla fine del codice, tornerà a il messaggio Excel predefinito che è PRONTO.
Ecco un’immagine della barra di stato mentre la macro è in esecuzione.
Dopo che la macro è terminata, la barra di stato mostrerà quanto segue –
Allo stesso modo, puoi aggiornare la barra di stato in diverse parti del codice, in modo che l’utente sappia cosa sta succedendo mentre la macro è in esecuzione.
A volte, potrebbero esserci una o più macro che coprono più processi e questa barra di stato sarà utile per sapere in quale processo la macro ha raggiunto.
Se i nostri blog ti sono piaciuti, condividilo con i tuoi amici su Facebook. E anche tu puoi seguirci su Twitter e Facebook.
_ Ci piacerebbe sentire la tua opinione, facci sapere come possiamo migliorare, integrare o innovare il nostro lavoro e renderlo migliore per te. Scrivici a [email protected]_
Articoli popolari:
link: / keyboard-formula-shortcuts-50-excel-scorciatoie-per-aumentare-la-produttività [50 scorciatoie Excel per aumentare la produttività]
link: / formule-e-funzioni-introduzione-di-vlookup-funzione [Come usare la funzione CERCA.VERT in Excel]
link: / tips-countif-in-microsoft-excel [Come usare la funzione CONTA.SE in Excel]
link: / excel-formula-and-function-excel-sumif-function [Come usare la funzione SUMIF in Excel]