Při práci s VBA Excel je jedním z problémů, se kterými se můžete setkat, pomalé načítání nebo aktualizace dat v tabulce. Jedním z důvodů tohoto zpoždění může být překreslení obrazovky po každé změně. Naštěstí existují jednoduché kroky, které vám pomohou vypnout překreslování a urychlit proces.
Prvním krokem je použití příkazu Application.ScreenUpdating = False na začátku kódu. Tím se překreslení obrazovky vypne a umožní vám provádět změny v tabulce bez zpoždění. Nezapomeňte povolit překreslování pomocí příkazu Application.ScreenUpdating = True na konci kódu vrátit normální zobrazení tabulky.
Kromě toho můžete použít příkaz Application.Calculation = xlCalculationManual pro deaktivaci automatického výpočtu vzorců v tabulce. To je zvláště užitečné, pokud vaše tabulka obsahuje velké množství složitých vzorců, které mohou zpomalit proces aktualizace dat. Nezapomeňte vrátit automatický výpočet pomocí příkazu Application.Calculation = xlCalculationAutomatic až skončíte s tabulkou.
Nezapomeňte, že vypnutí překreslení obrazovky a automatického výpočtu vzorců může být užitečné pouze v případě velkých tabulek nebo složitých operací aktualizace dat. V některých případech, například při práci s malými tabulkami, mohou být takové kroky zbytečné a nepřinášejí žádné hmatatelné změny.
Krok 1: Určení potřeby vypnutí překreslování
Periodické překreslování v Excelu může být užitečnou funkcí při práci s velkými a složitými tabulkami. Umožňuje aktualizovat data a zobrazit změny, ke kterým dochází na pracovním listu v reálném čase. Někdy však může být deaktivace této funkce užitečná pro zvýšení výkonu a zrychlení Maker.
Překreslování může být obzvláště pomalé, pokud vaše makro mění velké množství buněk nebo provádí složité výpočty. Místo toho, abyste pokaždé aktualizovali obrazovku při každé změně, můžete deaktivovat překreslování a provést všechny změny na pozadí.
Chcete-li určit potřebu deaktivace překreslování, měli byste zvážit následující faktory:
| 1 | Pokud vaše makro pracuje s velkou tabulkou nebo provádí složité výpočty, pak může deaktivace překreslování pomoci urychlit jeho provádění. |
| 2 | Pokud však vaše makro změní pouze malý počet buněk nebo provede jednoduché operace, vypnutí překreslování nemusí být praktické. |
| 3 | Pokud chcete sledovat změny na pracovním listu v reálném čase, pak se nedoporučuje deaktivovat překreslování, protože to způsobí, že obrazovka nebude obnovena. |
Správné rozhodnutí, zda vypnout překreslování, závisí na konkrétní situaci a požadavcích vašeho makra. V další části se podíváme na to, jak zakázat překreslování v aplikaci VBA Excel a aktivovat jej po spuštění makra.
Krok 2: Použití metody aplikace.ScreenUpdating
Chcete-li zakázat překreslování na začátku makra, měli byste nastavit hodnotu ScreenUpdating jako False :
Application.ScreenUpdating = False
Po dokončení makra je nutné vrátit hodnotu ScreenUpdating na standardní hodnotu rovnající se True, abyste povolili překreslení obrazovky:
Application.ScreenUpdating = True
Použití metody Application.ScreenUpdating může výrazně zvýšit výkon makra, zvláště pokud provádí velké množství dat nebo složité operace. Deaktivace překreslení obrazovky vám ušetří čas, který byste jinak strávili aktualizací obsahu buněk.
Při deaktivaci překreslování byste však měli být opatrní, protože to může vést k nepředvídatelným výsledkům nebo ztížit ladění makra. Proto se doporučuje používat tuto metodu pouze tam, kde je to skutečně nutné.
Krok 3: Přidání Kódu pro deaktivaci překreslování
Jakmile určíte, kde musíte překreslování vypnout, můžete do projektu VBA Excel přidat příslušný kód. To vám umožní spravovat proces překreslování a urychlit makra.
Chcete-li zakázat překreslování v Excelu, můžete použít následující kód:
| Kód | Popis |
| Application.ScreenUpdating = False | Zakáže překreslování obrazovky |
| Application.Calculation = xlCalculationManual | Vypne automatické přepočítávání vzorců |
Tento kód můžete umístit na začátek makra a deaktivovat překreslování před provedením dalších akcí. Poté můžete povolit překreslení pomocí následujícího kódu:
| Kód | Popis |
| Application.ScreenUpdating = True | Zahrnuje překreslení obrazovky |
| Application.Calculation = xlCalculationAutomatic | Zahrnuje automatické přepočítávání vzorců |
Pamatujte, že pokud zapomenete povolit překreslování, uživatelé mohou mít potíže s používáním souboru Excel po spuštění makra. Proto je důležité vždy povolit překreslování po dokončení použití kódu k deaktivaci.
Nyní víte, jak přidat kód pro deaktivaci překreslování v aplikaci VBA Excel. To vám pomůže urychlit spouštění Maker a zlepšit výkon vašeho souboru Excel.