Čo Application.Screenupdating = falošný znamená a prečo sa používa vo VBA

Anonim

Dobre! Tento je dôležitý.

Každý dobrý postup VBA má vždy tento riadok uvedený na začiatku.

Application.Screenupdating = FALSE 

A pred koncom postupu uvidíte aj tento riadok.

Application.Screenupdating = TRUE 

Čo je to ScreenUpdating?
Screenupdating je vlastnosť aplikačných objektov vo VBA. Je možné ho nastaviť na hodnotu TRUE alebo FALSE. Je to ako vypínač, ktorý je možné zapnúť alebo vypnúť.

A čo to robí?
Prvý riadok zrýchľuje spracovanie makra zastavením aktualizácie obrazovky programu Excel v reálnom čase.

Ak máte dlhé makro, ktoré zapisuje do rôznych hárkov, používa filtre, odstraňuje filtre, mení listy, ukladá zošity atď. A ak ste nevypli aktualizácie obrazovky pomocou riadka Application.Screenupdating = FALSE, zobrazí sa blikanie na obrazovke. Každá zmena vykonaná makrom v zošite sa bude zobrazovať dynamicky. To spomaľuje rýchlosť makra.

A ak máte tento riadok na začiatku makra, Excel nebude odrážať zmeny vykonané makrom, kým nezapnete screenupdating pomocou riadka Application.Screenupdating = TRUE.

Ak chcete makro zrýchliť, vypnite aktualizáciu obrazovky na začiatku podprogramu a aktualizáciu obrazovky povoľte pred koncom podprogramu.

Tu je jeden príklad:

Vedľajšia kontrola obrazovky ()  Application.Screenupdating = FALSE 'Vypnutie aktualizácie obrazovky.  List 1. Aktivujte rozsah („A1“). Hodnota = „Dobrý“ rozsah („A2“). Hodnota = „Ako sa máte?“ Rozsah ("A3"). Value = "Exceltip je úžasné, však?" List 2. Aktivujte Application.Screenupdating = TRUE 'Povolenie aktualizácie obrazovky. Koniec pod 

Keď spustíte vyššie uvedenú podsekciu, neuvidíte žiadne blikanie obrazovky. Uvidíte konečný výsledok práce vykonanej týmto makrom.

Dôležité poznámky:

Pred ukončením postupu sa uistite, že ste povolili aktualizáciu obrazovky. Ak nepovolíte aktualizáciu obrazovky, neuvidíte prácu vykonanú makrom.

Nie je možné aktualizovať obrazovku pred každým príkazom Exit Sub a End Sub. Je bežné zabudnúť na povolenie aktualizácií obrazovky pred Exit Sub. Ak to neurobíte, môžete sa stále čudovať, prečo váš kód nefungoval. Ale v skutočnosti áno. To sa len tak nevidí.

To je všetko. Toto robí Application.Screenupdating = False vo VBA. Tento jeden riadok kódu sa veľa mení. Je to rozdiel medzi vyspelým programovaním a neopatrným programovaním. Ak chcete zrýchliť makro, v kóde vždy použite tento riadok.

Dúfam, že vám to pomohlo. Ak máte akékoľvek pochybnosti týkajúce sa tohto článku alebo máte ďalšie otázky týkajúce sa programu Excel/VBA, pokojne sa pýtajte v sekcii komentárov nižšie. Rád pomôžem.

Aký je rozdiel medzi argumentmi ByRef a ByVal? : Toto je dôležitá otázka VBA. ByVal a ByRef sa používajú na rozdielne odovzdávanie argumentov. Jeden umožňuje zmenu v pôvodnej premennej, zatiaľ čo druhý nemení pôvodnú premennú.

Ako prechádzať cez listy v programe Excel pomocou VBA : Pri automatizácii obvyklých nudných úloh programu Excel vo VBA budete musieť prejsť každým listom. Začnime príkladom. Kód VBA na slučku vo všetkých hárkoch v programe Activeworkbook a názov tlačového hárka

Udalosti v programe Excel VBA: Niekedy chceme, aby sa niečo stalo automaticky, keď dôjde k určitej udalosti. Aby sme niečo urobili, keď sa v programe Excel stane konkrétna udalosť, použijeme udalosť Excel VBA

Populárne články:

50 skratiek programu Excel na zvýšenie produktivity | Vykonajte svoju úlohu rýchlejšie. Týchto 50 skratiek vám umožní pracovať ešte rýchlejšie v Exceli.

Funkcia VLOOKUP v programe Excel | Toto je jedna z najpoužívanejších a najobľúbenejších funkcií programu Excel, ktorá sa používa na vyhľadávanie hodnôt z rôznych rozsahov a hárkov.

COUNTIF v Exceli 2016 | Počítajte hodnoty s podmienkami pomocou tejto úžasnej funkcie. Na počítanie konkrétnych hodnôt nie je potrebné filtrovať údaje. Funkcia Countif je potrebná na prípravu palubnej dosky.

Ako používať funkciu SUMIF v programe Excel | Toto je ďalšia zásadná funkcia palubnej dosky. To vám pomôže zhrnúť hodnoty za konkrétnych podmienok.