Vypnite aktualizáciu obrazovky - príklady kódu VBA

Bez ohľadu na to, ako to vyzerá, keď vaše makro VBA manipuluje s obrazovkou, môžete svojmu makru pomôcť rýchlejšie pracovať, ak vypnete (deaktivujete) ScreenUpdating.

Zakázať aktualizáciu obrazovky

1. Ak chcete deaktivovať ScreenUpdating, na začiatku kódu zadajte tento riadok:

1 Application.ScreenUpdating = False

Povoliť aktualizáciu obrazovky

2. Ak chcete znova povoliť ScreenUpdating, na konci kódu zadajte tento riadok:

1 Application.ScreenUpdating = True

Príklad aktualizácie obrazovky VBA

Váš postup potom bude vyzerať takto:

1234567891011 Sub ScreenUpdating_Example ()Application.ScreenUpdating = False'Urob niečoRozsah („a1“). Rozsah kopírovania („b1“)Rozsah („a2“). Rozsah kopírovania („b2“)Rozsah ("a3"). Rozsah kopírovania ("b3")Application.ScreenUpdating = TrueKoniec pod

Aktualizácia obrazovky

Vypnutím funkcie ScreenUpdating sa váš kód VBA spustí oveľa rýchlejšie, ale tiež bude vaša práca pôsobiť profesionálnejšie. Koncoví používatelia zvyčajne nechcú vidieť zákulisie akcií vašich procedúr (najmä keď postup prebieha pomaly). Tiež by ste nemali chcieť, aby koncoví užívatelia videli zákulisie (napr. Skryté pracovné listy). Odporúčam deaktivovať (a znova povoliť) ScreenUpdating prakticky vo všetkých vašich postupoch.

Existujú však prípady, keď chcete, aby sa obrazovka obnovila. Na obnovenie obrazovky budete musieť dočasne zapnúť ScreenUpdating (neexistuje žiadny príkaz „obnoviť“ obrazovku):

123 Application.ScreenUpdating = True'Urob niečoApplication.ScreenUpdating = False

Nastavenia VBA - Zrýchlite kód

Existuje niekoľko ďalších nastavení, s ktorými môžete hrať, aby ste zvýšili rýchlosť kódu.

Zakázanie automatických výpočtov môže znamenať OBROVSKÝ rozdiel v rýchlosti:

1 Application.Calculation = xlManual

Deaktivácia stavového riadka bude mať tiež malý rozdiel:

1 Application.DisplayStatusBar = False

Ak váš zošit obsahuje udalosti, mali by ste zvyčajne zakázať udalosti na začiatku postupu:

1 Application.EnableEvents = False

Nakoniec sa váš kód VBA môže spomaliť, keď sa Excel pokúsi znova vypočítať konce strán (Poznámka: Neovplyvní to všetky postupy). Ak chcete zakázať zobrazovanie zlomov stránok, použite tento riadok kódu:

1 ActiveSheet.DisplayPageBreaks = Nepravda

Vám pomôže rozvoju miesta, zdieľať stránku s priateľmi

wave wave wave wave wave