Here is how you can stop the looping (but I really wish you would answer the question of what should happen if all three files are NOT present - exit? Wait?)
Place the following at the form level (i.e. at the top of the module - outside of all subroutines):
Dim fvStopTheLoop As Boolean
Inside the Sub cmdStart_Click, insert the following:
fvStopLoop = False
After EACH of your 'Do While True' statements, add the following line:
DoEvents
Where you have 'If i = 3 then', replace like the following:
If i = 3 Then
Exit Do
End If
If fvStopLoop = True Then
MsgBox "Ending the loop due to user request", vbOKOnly, "End"
Exit Sub
End If
Add a new command button with the following code:
Private Sub cmdStop_Click()
fvStopLoop = True
End Sub