As vezes é preciso 'dar um tempo' 
!!   Você sabe como fazer isto no VB sem usar o controle Timer ?  
Faça o seguinte:
1-) Inicie um novo projeto no VB e insira o seguinte código no formulário padrão :
Código da seção General Declarations: Declaramos a função API Sleep
| Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long) | 
Código do formulário padrão: Ao clicar no botão command1 teremos a indicação do início e após 5 segundos a exibição do tempo decorrido
| Private Sub Command1_Click() Debug.Print "Inicio - " & Time() Sleep 5000 Debug.Print "Fim - " & Time() End Sub | 
| A função Sleep dá uma pausa de 5 segundos. | 
O argumento da função é dado em milisegundos onde : 1000 milisegundos = 1 segundo
Essa foi moleza... 