Excel VBA StatusBar -egenskap - Enkle Excel -makroer

Innholdsfortegnelse

De StatusBar -eiendom av applikasjonsobjektet i Excel VBA kan brukes til å indikere fremdriften til en lang makro. På denne måten kan du gi brukeren beskjed om at en makro fortsatt kjører.

Situasjon:

Makroen vi skal lage fyller Range ("A1: E20") med tilfeldige tall.

Legg til følgende kodelinjer på kommandoknappen:

1. For det første erklærer vi tre variabler av typen Heltall, kalt i, j og pctCompl.

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

2. Legg til en dobbel sløyfe.

For i = 1 til 20
For j = 1 til 5
Neste j
Neste jeg

Legg til følgende kodelinjer (ved 3, 4 og 5) i løkken.

3. Bruk RandBetween -funksjonen til å importere et tilfeldig tall mellom 20 og 100.

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

4. Initialiser variabelen pctCompl. Den andre kodelinjen skriver verdien av variabelen pctCompl og litt beskrivende tekst på statuslinjen.

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

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

5. Vi bruker ventemetoden for applikasjonsobjektet for å simulere en lang makro.

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

6. For å gjenopprette standard statuslinjetekst, angi StatusBar -egenskapen til False (utenfor løkken).

Application.StatusBar = False

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

Merk: Du kan når som helst avbryte en makro ved å trykke Esc eller Ctrl + Break. For en mer visuell tilnærming, se vårt fremdriftsindikatorprogram.

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave