Kapcsolja ki a képernyőfrissítést - Példák a VBA kódokra

Bármennyire is jól néz ki, ahogy a VBA makróját manipulálja a képernyőn, segíthet a makró gyorsabb futásában, ha kikapcsolja (letiltja) a ScreenUpdating funkciót.

A képernyőfrissítés letiltása

1. A ScreenUpdating letiltásához a kód elejére tegye ezt a sort:

1 Application.ScreenUpdating = Hamis

A ScreenUpdating engedélyezése

2. A ScreenUpdating újbóli engedélyezéséhez írja be ezt a sort a kód végére:

1 Application.ScreenUpdating = Igaz

Példa a VBA képernyőfrissítésére

Az eljárás így fog kinézni:

1234567891011 Sub ScreenUpdating_Example ()Application.ScreenUpdating = Hamis'Csinálj valamitTartomány ("a1"). Másolási tartomány ("b1")Tartomány ("a2"). Másolási tartomány ("b2")Tartomány ("a3"). Másolási tartomány ("b3")Application.ScreenUpdating = IgazEnd Sub

Képernyő frissítése Frissítés

A képernyőfrissítés letiltása sokkal gyorsabbá teszi a VBA -kódot, de professzionálisabbá teszi a munkáját. A végfelhasználók általában nem akarják látni az eljárások kulisszatitkait (különösen akkor, ha az eljárás lassan fut). Ezenkívül nem kívánja, hogy a végfelhasználók lássák a kulisszák mögötti funkciókat (pl. Rejtett munkalapok). Javaslom, hogy tiltsa le (és engedélyezze újra) a képernyőfrissítést gyakorlatilag az összes eljárásban.

Vannak azonban olyan esetek, amikor frissíteni szeretné a képernyőt. A képernyő frissítéséhez ideiglenesen vissza kell kapcsolnia a ScreenUpdating funkciót (nincs képernyőfrissítési parancs):

123 Application.ScreenUpdating = Igaz'Csinálj valamitApplication.ScreenUpdating = Hamis

VBA beállítások - Gyorsítási kód

Számos más beállítással kell játszani a kód sebességének javítása érdekében.

Az automatikus számítások letiltása hatalmas különbséget jelenthet a sebességben:

1 Application.Calculation = xlManual

Az állapotsor letiltása szintén kis különbséget jelent:

1 Application.DisplayStatusBar = Hamis

Ha a munkafüzet eseményeket tartalmaz, akkor rendszerint tiltsa le az eseményeket az eljárás elején:

1 Application.EnableEvents = Hamis

Végül a VBA-kód lelassulhat, amikor az Excel megpróbálja újra kiszámítani az oldaltöréseket (Megjegyzés: nem minden eljárás lesz hatással). Az oldaltörések megjelenítésének letiltásához használja ezt a kódsort:

1 ActiveSheet.DisplayPageBreaks = Hamis

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave