ok, I think Ive misunderstood your question on what you're trying to do ..as you asked the question, 'how to execute code every 3 seconds' within the original context of your 'Loops' method it was an ok start
as you have the modified code, in RedemptionCheckBox124, 'Loops' will be executed 10 times - this is a loop you set up .. every one of those 10 times its going to wait 3000 milli/3 seconds - you dont stop 'Loops' as such, it stops/control returns to RedemptionCheckBox124 after the entire 10 loops of 3 seconds ..... what I suspect you are trying to get to is something like a Background worker, but I think it's way above your experience level
http://www.dotnetperls.com/backgroundworker-vbnet[
^]
...Im not sure if the standard VB.Net BackGroundWorker can be cancelled/terminated early though