В этом руководстве будет показано, как приостанавливать (прерывать) и возобновлять макрос в Excel.
Возможность приостановить макрос во время тестирования написанного кода VBA - полезный способ выяснить, где в нашем коде могут быть «ошибки». Есть несколько способов, которыми мы можем прервать выполнение макроса, а затем возобновить его с того места, где выполнение макроса было прервано.
Комбинация клавиш Control и Break
Если мы удерживаем клавишу управления, а затем нажимаем клавишу Pause / Break во время выполнения кода VBA, код немедленно останавливается с сообщением отладки, предупреждающим нас о том, что выполнение макроса было прервано.
Затем мы можем нажать Продолжать в появившемся диалоговом окне, чтобы продолжить выполнение макроса. В качестве альтернативы, если мы затем нажмем кнопку «Отладка» в диалоговом окне, макрос выделит место, где он остановился. Наведя указатель мыши на любую существующую переменную, мы можем увидеть, что хранится в переменных. Это может быть очень полезно при отладке нашего кода.
Затем мы можем щелкнуть Запустить кнопку на ленте (или нажмите F5 на клавиатуре), чтобы возобновить выполнение макроса.
Добавление точек останова в макрос
Перед запуском макроса мы можем вставить в макрос точки останова, чтобы остановить макрос в виде определенных строк кода.
Мы можем запустить код, нажав на Запустить на ленте или нажав F5 на клавиатуре. Макрос остановится в точке останова.
Снова нажмите кнопку «Выполнить» (под заголовком теперь будет указано «Продолжить»), чтобы возобновить выполнение макроса, или нажмите F5.
В других случаях выполнение макроса VBA может потребоваться приостановить. Это также можно сделать с помощью методов ожидания и сна. Эти методы используются больше для задержки фактического выполнения макроса, чем для отладки фактического кода.
Например, эта строка кода задержит выполнение макроса до тех пор, пока не пройдут еще 5 секунд.
123 | заявка.Ждать (Теперь + TimeValue("0:00:05")) |