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