It might be that you are still confused even after you have read the reference mentioned by DonManfred.
To do what you say a Wait For is not required. The global variable "blnok" is enough to do the job, and I assume that is why you created it ...
Private Sub example
For i =0 To 100
blnok = False ' declared globally
reset
Do Until blnok ' this will loop until [reset] is finished and blnok = true
Sleep(0) ' this makes this a resumeable sub
Loop
If blngonext = True Then ' ... some code
End If
Next
End Sub
Private Sub reset
' ...lot of commands executed here ..
blnok = True
End Sub
You do not mention what the sub "reset" is doing. If it is solid computation then there is nothing to be gained by calling it from a resumeable sub, so presumably "reset" itself contains a "Wait For" or something that makes it resumeable. Also I don't know what "blngonext" is doing, so maybe I have missed something.