V aplikaci Microsoft Excel hrají vzorce důležitou roli při provádění různých výpočtů a analýz dat. Umožňují uživatelům automaticky provádět složité matematické operace a získávat potřebné informace. Někdy však může být nutné dočasně deaktivovat přepočítávání vzorců, aby se urychlil proces práce nebo se zabránilo nežádoucím změnám v důsledku přepočítání.
K deaktivaci přepočítávání vzorců v Excelu lze použít různé metody. Jedním z nejjednodušších způsobů je použití funkce Application.Calculation a předat jí význam xlCalculationManual. To způsobí, že Excel přestane automaticky přepočítávat vzorce při aktualizaci dat nebo zadávání nových hodnot. Je však třeba si uvědomit, že po vypnutí přepočítávání vzorců nemusí být výsledky výpočtů k dispozici až do okamžiku ručního přepočítání.
Dalším způsobem, jak deaktivovat přepočítávání vzorců, je použití funkce Application.ScreenUpdating. Při stanovení jeho hodnoty v False, Excel nebude aktualizovat obrazovku během provádění makra nebo jiného kódu VBA. To může výrazně urychlit provádění programu, zvláště pokud obsahuje velké množství výpočtů.
V tomto článku se blíže podíváme na tyto a další způsoby, jak deaktivovat přepočet vzorců v aplikaci VBA Excel, a také poskytneme pokyny k jejich použití. Bude také zvažováno, jak znovu povolit přepočet vzorců a provést potřebné výpočty.
Jak zakázat přepočítávání vzorců VBA Excel
- Metoda Aplikace.Calculation = xlCalculationManual. Tato metoda umožňuje nastavit režim ručního přepočítávání vzorců. V tomto režimu Excel nebude automaticky přepočítávat vzorce v buňkách. Pro zapnutí režimu ručního přepočítávání lze použít následující kód:
Application.Calculation = xlCalculationManual
Application.Calculation = xlCalculationAutomatic
Application.Calculate
CalculateFull
Vyberte metodu, která je pro váš úkol nejvhodnější, a použijte ji ve svém kódu VBA k deaktivaci automatického přepočítávání vzorců v Excelu.
Metody a pokyny
VBA Excel má několik metod a pokynů, které lze použít k deaktivaci přepočítávání vzorců. Některé ovlivňují pouze konkrétní vzorce nebo rozsahy a některé mohou zakázat přepočet pro celý list nebo dokonce pro celou knihu.
Jedním ze způsobů, jak zakázat přepočítávání vzorců v aplikaci VBA Excel, je použití vlastnosti Calculation v objektu aplikace. Tato vlastnost umožňuje nastavit přepočítací režim pro celou knihu. Následující kód například deaktivuje přepočítávání vzorců:
Application.Calculation = xlManual
Dalším způsobem je použití vlastnosti Calculation v zařízení Worksheet. Tato vlastnost umožňuje nastavit přepočítací režim pro konkrétní list. Následující kód například deaktivuje přepočet vzorců pro aktivní list:
ActiveSheet.Calculation = xlManual
Můžete také použít pokyn Calculate k deaktivaci přepočítávání vzorců v určitém rozsahu. Například následující kód zakáže přepočet vzorců pro rozsah A1: B10:
Range("A1:B10").Calculate
Pokud potřebujete zakázat přepočítávání pouze pro určité vzorce, můžete použít funkci Application.CalculateFullRebuild. Tato funkce přepočítává všechny vzorce, ale pouze ty, které jsou závislé na změněných hodnotách. Například následující kód zakáže přepočet pouze pro vzorec v buňce A1:
Range("A1").CalculateFullRebuild
Pomocí těchto metod a pokynů v aplikaci VBA Excel můžete snadno zakázat přepočítávání vzorců pro konkrétní rozsahy, listy nebo dokonce pro celou knihu. To může být užitečné, pokud potřebujete dočasně zastavit přepočítávání vzorců pro efektivnější práci s velkými datovými sadami.