Excel VBA StatusBar -ejendom - nemme Excel -makroer

Indholdsfortegnelse

Det StatusBar -ejendom af applikationsobjektet i Excel VBA kan bruges til at angive udviklingen af ​​en lang makro. På denne måde kan du lade brugeren vide, at en makro stadig kører.

Situation:

Makroen, vi skal oprette, udfylder Range ("A1: E20") med tilfældige tal.

Tilføj følgende kodelinjer til kommandoknappen:

1. For det første erklærer vi tre variabler af typen Integer, navngivet i, j og pctCompl.

Dim i As Integer, j As Integer, pctCompl As Integer

2. Tilføj en dobbelt sløjfe.

For i = 1 til 20
For j = 1 til 5
Næste j
Næste i

Tilføj følgende kodelinjer (ved 3, 4 og 5) til sløjfen.

3. Brug RandBetween -funktionen til at importere et tilfældigt tal mellem 20 og 100.

Celler (i, j) .Value = WorksheetFunction.RandBetween (20, 100)

4. Initialiser variablen pctCompl. Den anden kodelinje skriver værdien af ​​variablen pctCompl og en del beskrivende tekst i statuslinjen.

pctCompl = (i - 1) * 5 + (j * 1)
Application.StatusBar = "Importerer data …" & pctCompl & "% fuldført"

Eksempel: For i = 3, j = 1, (3 - 1) * 5 + (1 * 1) = 11% er gennemført.

5. Vi bruger ventemetoden i applikationsobjektet til at simulere en lang makro.

Application.Wait Now + TimeValue ("00:00:01")

6. Hvis du vil gendanne standardstatuslinjens tekst, skal du angive egenskaben StatusBar til Falsk (uden for løkken).

Application.StatusBar = Falsk

Resultat, når du klikker på kommandoknappen på arket:

Bemærk: Du kan til enhver tid afbryde en makro ved at trykke på Esc eller Ctrl + Break. For en mere visuel tilgang, se vores Progress Indicator -program.

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave