De StatusBar -egenskap av applikationsobjektet i Excel VBA kan användas för att indikera framstegen för ett långt makro. På så sätt kan du låta användaren veta att ett makro fortfarande körs.
Situation:
vad är bin nummer i Excel
Makrot vi ska skapa fyller Range ('A1: E20') med slumpmässiga tal.
Lägg till följande kodrader till kommandoknappen:
1. Först deklarerar vi tre variabler av typen Integer, namngivna i, j och pctCompl.
IngeniSom Heltal, jSom Heltal, pctComplSom Heltal2. Lägg till a Dubbel slinga .
Förjag = 1TilltjugoFörj = 1Till5
Nästaj
Nästai
Lägg till följande kodrader (vid 3, 4 och 5) i slingan.
3. Använd funktionen RandBetween för att importera ett slumpmässigt tal mellan 20 och 100.
Celler (i, j) .Value = WorksheetFunction.RandBetween (20, 100)4. Initiera variabeln pctCompl. Den andra kodraden skriver värdet på variabeln pctCompl och lite beskrivande text i statusfältet.
pctCompl = (i - 1) * 5 + (j * 1)Application.StatusBar = 'Importera data ..' & pctCompl & '% Completed'
Exempel: För i = 3, j = 1, (3 - 1) * 5 + (1 * 1) = 11% har slutförts.
5. Vi använder väntmetoden för applikationsobjektet för att simulera ett långt makro.
Application.Wait Now + TimeValue ('00: 00: 01 ')6. För att återställa standardstatusfältets text, ställ in egenskapen StatusBar till False (utanför kretsen).
var är namnrutan i Excel 2013Application.StatusBar =Falsk
Resultat när du klickar på kommandoknappen på arket:
Obs: Du kan avbryta ett makro när som helst genom att trycka på Esc eller Ctrl + Break. För en mer visuell metod, se vår Framstegsindikator program.
Gå till nästa kapitel: ActiveX -kontroller