Có các chức năng Ngủ và Chờ có sẵn trong VBA hoặc thông qua khai báo. Tuy nhiên, "quy tắc đơn giản quá mức" là không bao giờ sử dụng chế độ Ngủ (). (google '"không bao giờ sử dụng lập trình ngủ ()" lập trình')
Trang tài liệu cho Application.Wait ( https://msdn.microsoft.com/en-us/l Library / office / ff822851.aspx ). Lưu ý rằng Ngủ và Chờ sẽ khiến Excel không phản hồi trong khoảng thời gian bạn chỉ định và điều này có thể gây ra "các vụ đắm tàu".
Nếu tính toán của bạn liên quan đến một vòng lặp nào đó, thì một cách để xử lý việc này cho mục đích cụ thể của bạn (mất thời gian tính toán cho tính khả dụng của CPU) là tạo một hàm chờ đặc biệt của riêng bạn, ví dụ như vòng lặp DoEvents () trong 1 giây và rồi trở về.
DoEvents về cơ bản nói với mã / trình thông dịch của bạn bỏ thời gian cho HĐH, v.v ... Nó chắc chắn sẽ khiến mã của bạn mất nhiều thời gian hơn. Nó cũng có thể cho phép bạn chỉnh sửa bảng tính trong khi tính toán đang diễn ra, do đó, số dặm của bạn có thể thay đổi. Kiểm tra.
Xem, ví dụ: https://stackoverflow.com/questions/469347/is-there-an-equivalent-to-thread-s ngủ-in-vba