Poista näytön päivitys käytöstä - VBA -koodiesimerkkejä

Niin hienolta kuin se näyttää katsomassa VBA -makroasi manipuloimasta näyttöä, voit auttaa makroasi toimimaan nopeammin, jos sammutat (poistat käytöstä) ScreenUpdating -toiminnon.

Poista näytön päivitys käytöstä

1. Voit poistaa ScreenUpdating -toiminnon käytöstä kirjoittamalla koodin alkuun tämän rivin:

1 Application.ScreenUpdating = Väärä

Ota näytön päivitys käyttöön

2. Ota ScreenUpdating uudelleen käyttöön kirjoittamalla koodin loppuun tämä rivi:

1 Application.ScreenUpdating = Totta

Esimerkki VBA -näytön päivityksestä

Menettelysi näyttää tältä:

1234567891011 AlinäyttöUpdating_Example ()Application.ScreenUpdating = Väärä'Tee jotainAlue ("a1"). Kopioi alue ("b1")Alue ("a2"). Kopioi alue ("b2")Alue ("a3"). Kopioi alue ("b3")Application.ScreenUpdating = TottaEnd Sub

Näytön päivitys Päivitä

Näytön päivityksen poistaminen käytöstä saa VBA -koodisi toimimaan PALJON nopeammin, mutta se tekee myös työstäsi ammattimaisempaa. Loppukäyttäjät eivät yleensä halua nähdä menettelyjesi kulissien takana olevia toimintoja (varsinkin kun menettely suoritetaan hitaasti). Et myöskään halua loppukäyttäjien näkevän kulissien takana olevaa toimintoa (esim. Piilotetut laskentataulukot). Suosittelen, että poistat (ja otat uudelleen käyttöön) ScreenUpdationin käytännössä kaikissa toimenpiteissäsi.

Joskus haluat kuitenkin näytön päivittyvän. Jos haluat päivittää näytön, sinun on otettava ScreenUpdating (Tilan päivitys) -komento väliaikaisesti uudelleen käyttöön:

123 Application.ScreenUpdating = Totta'Tee jotainApplication.ScreenUpdating = Väärä

VBA -asetukset - nopeutuskoodi

On olemassa useita muita asetuksia, joilla voit parantaa koodin nopeutta.

Automaattisten laskelmien poistaminen käytöstä voi vaikuttaa valtavaan nopeuteen:

1 Application.Calculation = xlManual

Tilapalkin poistaminen käytöstä tekee myös pienen eron:

1 Application.DisplayStatusBar = Väärä

Jos työkirjasi sisältää tapahtumia, sinun tulee yleensä poistaa tapahtumat käytöstä toimenpiteen alussa:

1 Application.EnableEvents = Väärä

Lopuksi VBA-koodisi voi hidastua, kun Excel yrittää laskea sivunvaihdot uudelleen (Huomautus: tämä ei vaikuta kaikkiin menettelyihin). Voit poistaa sivunvaihtojen näyttämisen käytöstä käyttämällä tätä koodiriviä:

1 ActiveSheet.DisplayPageBreaks = Väärä

Tulet auttaa kehittämään sivuston jakaminen sivu ystävillesi

wave wave wave wave wave