Есть функции Sleep и Wait, доступные в VBA или через объявление. Однако «чрезмерно упрощенное правило большого пальца» состоит в том, чтобы никогда не использовать Sleep (). (Google "Никогда не используйте sleep ()" Программирование ")
Страница документа для Application.Wait ( https://msdn.microsoft.com/en-us/library/office/ff822851.aspx ). Обратите внимание, что режим «Сон и ожидание» приведет к тому, что Excel перестанет отвечать на запросы в течение указанного вами времени, и это может привести к «срыву поезда».
Если в ваших вычислениях используется какой-то цикл, то один из способов справиться с этим для вашей конкретной цели (лишиться времени вычисления для доступности ЦП) состоит в том, чтобы создать специальную собственную функцию ожидания, которая, например, циклически повторяет DoEvents () в течение 1 секунды и затем возвращается.
DoEvents в основном говорит вашему коду / интерпретатору отказаться от времени для ОС и т. Д. Это определенно заставит ваш код занять больше времени. Это также может позволить вам редактировать рабочий лист во время расчета, поэтому ваш пробег может варьироваться. Тест.
См., Например, /programming/469347/is-there-an-equivalent-to-thread-sleep-in-vba