Yo probaria un timer y algo asi:
Código vb:
Ver originalPrivate sub Pausa(byval Tiempo as integer)
Timer1.Interval=Tiempo
Timer1.Enabled=true
Do While Timer1.Enabled=True
doevents
loop
End sub
Private sub Timer1_Timer()
Timer1.Enabled=False
End Sub
Y antes de mostrar el error pones la pausa
Pausa 1000 ' en milisegundos
MsgBox "...."
No se si lo he probado alguna vez pero es una de las opciones.
Saludos