The while loop crushes the battery and makes the app go ANR. You don't want to use it for pauses, ever.
Use the code from cableguy above. Variable passed is in MilliSeconds, so 5000 is 5 seconds, 10000 is 10 seconds etc.
in Process_Globals
Dim Timer1 As Timer
Split your current sub
Sub FirstHalf
do stuff
Timer1.Intitialize("Pause",2500) '2.5 seconds
Timer1.Enabled=True
end sub
sub SecondHalf
do more stuff
end sub
Sub Pause_Tick
Timer1.Enabled=False
SecondHalf
End Sub