Ako zobraziť správu na stavovom riadku programu Excel pomocou VBA

Anonim

Stavový riadok v Exceli je možné použiť ako monitor kódu. Keď je váš kód VBA dlhý a vykonávate niekoľko úloh pomocou jazyka VBA, často vypnete aktualizáciu obrazovky, aby ste videli, že obrazovka bliká. Ale kvôli tomu nebudete vedieť, čo sa deje vo vašom kóde.

Ak neviete, kde je stavový riadok v programe Excel, tu je:

Na získanie informácií z Excelu môžete použiť stavový riadok programu Excel bez toho, aby ste zasahovali do vykonávania kódu. Fázy svojho Marca môžete zobraziť v stavovom riadku alebo ho použiť ako ukazovateľ priebehu.

Kód VBA na zobrazenie správ v stavovom riadku programu Excel

Application.StatusBar = "Správa"

StatusBar je vlastnosť objektu Application, ktorá berie text ako vstup.

V tomto prípade len ukazujem, ktorá funkcia je spustená …

Sub DisplayMessageOnStatusBar () Application.ScreenUpdating = False Application.StatusBar = "Volanie funkcie jedna" 'call function_1 Application.Wait (Now + TimeValue ("00: 00: 2")) Application.StatusBar = "Volanie funkcie dva" 'Zavolajte funkciu_2 Application.Wait (Now + TimeValue ("00: 00: 2")) Application.StatusBar = "Volanie funkcie tri" 'Zavolajte function_3 Application.Wait (Now + TimeValue ("00: 00: 2")) Application.StatusBar = "" Application.ScreenUpdating = True End Sub 

V tomto prípade je aktualizácia obrazovky na začiatku nastavená na hodnotu False.

Teraz pred volaním funkcie function_1 zobrazujem správu, ktorá volá funkciu jedna.

Application.Wait (Now + TimeValue ("00: 00: 2")) tento riadok kódu je len na falošné zdĺhavé volanie funkcie, aby som dostal 2 sekundy, aby som to videl na svojom stavovom riadku.

Urobil som to pred všetkými funkciami a nakoniec som stavový riadok nechal prázdny („“).

Správy v stavovom riadku sú veľmi užitočné na zobrazenie správ pri práci s dlhým kódom. Keď váš kód prejde niekoľkými fázami alebo spustí dlhú slučku, môžete to ukázať na stavovom riadku, aby používateľ vedel, že kód beží. V opačnom prípade si používateľ môže myslieť, že systém visel alebo čo.

Teraz môžete inteligentne získať informácie o stavovom riadku pomocou VBA programu Excel 2016, 2013, 2010 a 2007 pomocou tejto jednoradovej vložky.

STARÝ POST

Niektorým makrám / kódom vba trvá dlho, kým sa spustia alebo vykonajú požadované akcie. Ak ste vypli aktualizáciu obrazovky pomocou riadka Application.ScreenUpdating = False na začiatku kódu, potom ak používateľ spustí kód, nebude vedieť, čo sa deje, a myslia si, že počítačový systém nereaguje. Môžete požiadať kód, aby na stavovom riadku zobrazil stavovú správu, aby bol používateľ informovaný o aktuálnom stave kódu.

Tu je jednoduchý kód, ktorý dáva okno so správou ukazujúce hodnoty v stĺpci A od riadka 2 po posledný riadok. V stavovom riadku sa pri spustení kódu zobrazí správa „Makro je spustené“ a po dokončení kódu sa zobrazí správa „Pripravené“, ktorá je jednou z predvolených správ programu Excel.

Voľba Explicitné čiastkové makro1 () 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 torow Application.StatusBar = “Macro running” Msgbox .Range (“A” & i) .Value Next i End With Application.StatusBar = “” Application.ScreenUpdating = True Application.DisplayAlerts = Pravdivý koniec Sub 

Ak chcete skopírovať vyššie uvedený kód do svojho súboru,

  • Na klávesnici stlačte kombináciu klávesov Alt + F11.
  • Na ľavej strane uvidíte objekty programu Microsoft Excel.
  • Kliknite pravým tlačidlom myši a zvoľte Vložiť.
  • Potom kliknite na modul.
  • Skopírujte kód do okna kódu vpravo.

Kód zobrazený v module môžete vidieť nižšie -

Teraz pochopme, čo robí každý riadok kódu -

Najprv teda nastavíme DISPLAYSTATUSBAR na true a potom nastavíme správu pre stavový riadok. Akonáhle použijeme Application.StatusBar = “” na konci kódu sa vráti k predvolenej správe programu Excel, ktorá je PRIPRAVENÁ.

Tu je obrázok stavového riadka, keď je makro spustené.

Po dokončení makra sa stavový riadok zobrazí nasledovne -

Podobne môžete aktualizovať stavový riadok v rôznych častiach kódu, aby používateľ vedel, čo sa deje, keď je makro spustené. Niekedy môže existovať jedno alebo viac makier, ktoré pokrývajú viacero procesov, a v tomto stavovom riadku bude užitočné vedieť, v ktorom procese makro dosiahlo.

Ak sa vám páčili naše blogy, zdieľajte ich so svojimi priateľmi na Facebooku. A tiež nás môžete sledovať na Twitteri a Facebooku.
Radi by sme vás počuli, dajte nám vedieť, ako môžeme zlepšiť, doplniť alebo inovovať našu prácu a zlepšiť ju pre vás. Napíšte nám na emailovú stránku

Populárne články:

50 skratiek programu Excel na zvýšenie produktivity

Ako používať funkciu VLOOKUP v programe Excel

Ako používať funkciu COUNTIF v programe Excel

Ako používať funkciu SUMIF v programe Excel