It depends on what you want to happen in the meantime, or what to allow, or
why. There are "wait" functions that almost freezes the computer while
waiting. I'd prefer to split the procedure in two and call the second one
with the Application.Wait command (see Help on this). But if you expect user
interaction or want to wait for some other procedure to finish, see if
there's another way to do it.