Добре! Този е важен.
Всяка добра процедура за VBA винаги има този ред споменат в началото.
Application.Screenupdating = FALSE
И преди края на процедурата ще видите и този ред.
Application.Screenupdating = TRUE
Какво е ScreenUpdating?
Актуализацията на екрана е свойство на обектите на приложението във VBA. Може да се зададе на TRUE или FALSE. Това е като превключвател, който може да бъде включен или изключен.
И какво прави?
Скоростта на първия ред ускорява обработката на макроси, като спира актуализирането на екрана в реално време на Excel.
Ако имате дълъг макрос, който записва в различни листове, прилага филтри, премахва филтри, променя листове, запазва работни книги и т.н. И ако не сте изключили актуализациите на екрана с помощта на реда Application.Screenupdating = FALSE, тогава ще видите трептене на екрана. Всяка промяна, направена от макрос в работната книга, ще се показва динамично. Това забавя скоростта на макроса.
И ако имате този ред в началото на макроса, Excel няма да отразява промените, направени от макроса, докато актуализацията на екрана не бъде включена с помощта на реда Application.Screenupdating = TRUE.
Ако искате да ускорите макроса, деактивирайте актуализацията на екрана в началото на подпрограмата и активирайте актуализацията на екрана преди края на подпрограмата.
Ето един пример:
Подпроверка на екрана () Application.Screenupdating = FALSE 'Деактивиране на актуализирането на екрана. Sheet1.Активирайте Range ("A1"). Value = "Hi" Range ("A2"). Value = "Как сте?" Range ("A3"). Value = "Exceltip е невероятен, нали?" Лист 2. Активирайте Application.Screenupdating = TRUE 'Активиране на актуализирането на екрана. End Sub
Когато стартирате горния под, няма да видите трептене на екрана. Ще видите крайния резултат от работата, извършена от този макрос.
Важни бележки:
Уверете се, че сте активирали актуализацията на екрана, преди процедурата да приключи. Ако не активирате актуализацията на екрана, няма да можете да видите работата, извършена от макроса.
Невъзможно актуализиране на екрана преди всяка команда Exit Sub и End Sub. Обичайно е да забравите активирането на актуализации на екрана преди излизане от Sub. Ако не направите това, може да продължите да се чудите защо кодът ви не работи. Но в действителност го направи. Просто не можете да го видите.
Това е. Това прави Application.Screenupdating = False във VBA. Този ред код променя много. Това е разликата между зряло програмиране и небрежно програмиране. Ако искате да ускорите макроса си, винаги използвайте този ред в кода си.
Надявам се това да ви е било полезно. Ако имате някакви съмнения относно тази статия или имате други въпроси, свързани с Excel/VBA, не се колебайте да попитате в секцията за коментари по -долу. Ще се радвам да помогна.
Каква е разликата между аргументите ByRef и ByVal? : Това е важен VBA въпрос. ByVal и ByRef се използват за предаване на аргументи по различен начин. Единият позволява промяната да бъде направена в оригиналната променлива, докато другата не променя оригиналната променлива.
Как да преглеждате листове в Excel с помощта на VBA : Докато автоматизирате обичайните скучни задачи на excel във VBA, ще получите необходимостта да преглеждате всеки лист. Нека започнем с пример. Кодът на VBA за затваряне във всички листове в Activeworkbook и отпечатване на име на лист
Събития в Excel VBA: Понякога искаме нещо да се случи автоматично, когато настъпи определено събитие. За да направим нещо, когато се случи конкретно събитие в Excel, използваме събитие Excel VBA
Популярни статии:
50 преки пътища в Excel за повишаване на вашата производителност | Бъдете по -бързи в задачата си. Тези 50 преки пътища ще ви накарат да работите още по -бързо в Excel.
Функцията VLOOKUP в Excel | Това е една от най -използваните и популярни функции на excel, която се използва за търсене на стойност от различни диапазони и листове.
COUNTIF в Excel 2016 | Пребройте стойностите с условия, използвайки тази невероятна функция. Не е необходимо да филтрирате данните си, за да броите конкретни стойности. Функцията Countif е от съществено значение за подготовката на вашето табло.
Как да използвате функцията SUMIF в Excel | Това е друга основна функция на таблото. Това ви помага да обобщите стойностите при конкретни условия.