Как ускорить макрокоманд в Повороты
Как повысить скорость макрокода VBA?
В этой статье мы узнаем, как быстрее запускать макросы с помощью сводных таблиц, используя код VBA.
Вопрос): Я работаю над дашбордом, на котором создано значительное количество сводных таблиц и сводных диаграмм. Проблема, с которой я сталкиваюсь, заключается в том, что когда я обновляю все опорные точки, вся система зависает. Мне нужен волшебный код, который мне поможет.
Нам нужно выполнить следующие шаги:
Щелкните вкладку «Разработчик». В группе «Код» выберите Visual Basic
изображение: https: //www.office-skill.site/images/wp-content-uploads-2015-06-img134.png [img1, width = 409, height = 120]
Введите следующий код в стандартный модуль
Sub FastMacro ()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
ActiveWorkbook.RefreshAll
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub
На приведенном выше снимке экрана показан режим расчета в ручном режиме и обновление экрана, которое изначально было ложным, перед обновлением всех опорных точек, а затем режим расчета, который будет автоматическим, и обновление экрана, которое будет истинным.
Если вы последуете описанному выше подходу, это приведет к значительному обновлению по сравнению с простым обновлением сводных диаграмм.