Existem funções de suspensão e espera disponíveis no VBA ou por meio de uma declaração. No entanto, a "regra geral simplista demais" é nunca usar Sleep (). (google '"nunca use a programação sleep ()"')
Página de documento do Application.Wait ( https://msdn.microsoft.com/en-us/library/office/ff822851.aspx ). Observe que a suspensão e a espera farão com que o Excel não responda pela duração especificada e isso pode causar "naufrágios de trem".
Se o seu cálculo envolve algum tipo de loop, então uma maneira de lidar com isso para seu objetivo específico (perder tempo de cálculo da disponibilidade da CPU) é criar uma função de espera especial que, por exemplo, faz um loop em DoEvents () por 1 segundo e então retorna.
O DoEvents basicamente diz ao seu código / intérprete que dê tempo ao sistema operacional, etc. Isso definitivamente fará com que seu código demore mais. Também pode permitir que você edite a planilha enquanto o cálculo está em andamento, portanto, sua milhagem pode variar. Teste.
Consulte, por exemplo, https://stackoverflow.com/questions/469347/is-there-an-equivalent-to-thread-sleep-in-vba