In the past I have used DoEvents between queries in VBA to ensure each query was accomplished before the next.
But I have read that the DBEngine.Idle would be better suited in a multi-user environment. (Such as a Frontend on each user's computer linked to a Backend database on the server)
SO...