Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,101
Default Stopping repetitive loop execution through user form (or other ide

I have a repetitive loop in a macro that I want to run repeatedly until the
user decides to stop it. I tried having a non-modal userform with a toggle
button which when pushed, it would loop out of the repetitive loop. However,
since the macro is busy in the code, I cannot push the button in the user
form. Does anyone have any ideas on how a user can intervene to stop the code
from the repetitive loop? The userform is just an idea, but anything that
works would be great.

Thanks for any help!
Mike
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 113
Default Stopping repetitive loop execution through user form (or other ide

Post your code in this forum first, maybe some1 may solve this !

thanks,,
Halim


Mike menuliskan:
I have a repetitive loop in a macro that I want to run repeatedly until the
user decides to stop it. I tried having a non-modal userform with a toggle
button which when pushed, it would loop out of the repetitive loop. However,
since the macro is busy in the code, I cannot push the button in the user
form. Does anyone have any ideas on how a user can intervene to stop the code
from the repetitive loop? The userform is just an idea, but anything that
works would be great.

Thanks for any help!
Mike


  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 27,285
Default Stopping repetitive loop execution through user form (or other ide

Hit the escape key

--
Regards,
Tom Ogilvy

"Mike" wrote in message
...
I have a repetitive loop in a macro that I want to run repeatedly until the
user decides to stop it. I tried having a non-modal userform with a toggle
button which when pushed, it would loop out of the repetitive loop.
However,
since the macro is busy in the code, I cannot push the button in the user
form. Does anyone have any ideas on how a user can intervene to stop the
code
from the repetitive loop? The userform is just an idea, but anything that
works would be great.

Thanks for any help!
Mike



  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,588
Default Stopping repetitive loop execution through user form (or other ide


Check Help for: EnableCancelKey

Tim

"Mike" wrote in message
...
I have a repetitive loop in a macro that I want to run repeatedly until the
user decides to stop it. I tried having a non-modal userform with a toggle
button which when pushed, it would loop out of the repetitive loop.
However,
since the macro is busy in the code, I cannot push the button in the user
form. Does anyone have any ideas on how a user can intervene to stop the
code
from the repetitive loop? The userform is just an idea, but anything that
works would be great.

Thanks for any help!
Mike



  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,101
Default Stopping repetitive loop execution through user form (or other

This is almost exactly what I need! If I hit the ESC key and need to finish
up my loop (for some cleanup), is there a way to go back into the loop and
finish up the current iteration. Essentially, I need to set a trigger
"GetOutOfLoop" by pushing the ESC key and continue at the current line until
the end of the loop.

Here are the notes from the help about EnableCancelKey:
On Error GoTo handleCancel
Application.EnableCancelKey = xlErrorHandler
MsgBox "This may take a long time: press ESC to cancel"
For x = 1 To 1000000 ' Do something 1,000,000 times (long!)
' do something here
Next x

handleCancel:
If Err = 18 Then
MsgBox "You cancelled"
End If


"Tim Williams" wrote:


Check Help for: EnableCancelKey

Tim

"Mike" wrote in message
...
I have a repetitive loop in a macro that I want to run repeatedly until the
user decides to stop it. I tried having a non-modal userform with a toggle
button which when pushed, it would loop out of the repetitive loop.
However,
since the macro is busy in the code, I cannot push the button in the user
form. Does anyone have any ideas on how a user can intervene to stop the
code
from the repetitive loop? The userform is just an idea, but anything that
works would be great.

Thanks for any help!
Mike






  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,101
Default Stopping repetitive loop execution through user form (or other

I found that the following line works well:
Resume Next

This, however, will only go to the next line in the CURRENT procedure. Is
there a way to go back to the current line in any procedure (especially a
CALLED procedure)?

Thanks!

"Mike" wrote:

This is almost exactly what I need! If I hit the ESC key and need to finish
up my loop (for some cleanup), is there a way to go back into the loop and
finish up the current iteration. Essentially, I need to set a trigger
"GetOutOfLoop" by pushing the ESC key and continue at the current line until
the end of the loop.

Here are the notes from the help about EnableCancelKey:
On Error GoTo handleCancel
Application.EnableCancelKey = xlErrorHandler
MsgBox "This may take a long time: press ESC to cancel"
For x = 1 To 1000000 ' Do something 1,000,000 times (long!)
' do something here
Next x

handleCancel:
If Err = 18 Then
MsgBox "You cancelled"
End If


"Tim Williams" wrote:


Check Help for: EnableCancelKey

Tim

"Mike" wrote in message
...
I have a repetitive loop in a macro that I want to run repeatedly until the
user decides to stop it. I tried having a non-modal userform with a toggle
button which when pushed, it would loop out of the repetitive loop.
However,
since the macro is busy in the code, I cannot push the button in the user
form. Does anyone have any ideas on how a user can intervene to stop the
code
from the repetitive loop? The userform is just an idea, but anything that
works would be great.

Thanks for any help!
Mike




  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,588
Default Stopping repetitive loop execution through user form (or other

You could always set a [global] flag in the error handler, and then use that to signal to other procedures to tidy up and then exit.

--
Tim Williams
Palo Alto, CA


"Mike" wrote in message ...
I found that the following line works well:
Resume Next

This, however, will only go to the next line in the CURRENT procedure. Is
there a way to go back to the current line in any procedure (especially a
CALLED procedure)?

Thanks!

"Mike" wrote:

This is almost exactly what I need! If I hit the ESC key and need to finish
up my loop (for some cleanup), is there a way to go back into the loop and
finish up the current iteration. Essentially, I need to set a trigger
"GetOutOfLoop" by pushing the ESC key and continue at the current line until
the end of the loop.

Here are the notes from the help about EnableCancelKey:
On Error GoTo handleCancel
Application.EnableCancelKey = xlErrorHandler
MsgBox "This may take a long time: press ESC to cancel"
For x = 1 To 1000000 ' Do something 1,000,000 times (long!)
' do something here
Next x

handleCancel:
If Err = 18 Then
MsgBox "You cancelled"
End If


"Tim Williams" wrote:


Check Help for: EnableCancelKey

Tim

"Mike" wrote in message
...
I have a repetitive loop in a macro that I want to run repeatedly until the
user decides to stop it. I tried having a non-modal userform with a toggle
button which when pushed, it would loop out of the repetitive loop.
However,
since the macro is busy in the code, I cannot push the button in the user
form. Does anyone have any ideas on how a user can intervene to stop the
code
from the repetitive loop? The userform is just an idea, but anything that
works would be great.

Thanks for any help!
Mike





  #8   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 3,101
Default Stopping repetitive loop execution through user form (or other

Tim,

I can use a global flag, but then I would need the Error Handler & Resume
logic in EACH procedure that I call. Is there a way that I can avoid that?

Thanks!

"Tim Williams" wrote:

You could always set a [global] flag in the error handler, and then use that to signal to other procedures to tidy up and then exit.

--
Tim Williams
Palo Alto, CA


"Mike" wrote in message ...
I found that the following line works well:
Resume Next

This, however, will only go to the next line in the CURRENT procedure. Is
there a way to go back to the current line in any procedure (especially a
CALLED procedure)?

Thanks!

"Mike" wrote:

This is almost exactly what I need! If I hit the ESC key and need to finish
up my loop (for some cleanup), is there a way to go back into the loop and
finish up the current iteration. Essentially, I need to set a trigger
"GetOutOfLoop" by pushing the ESC key and continue at the current line until
the end of the loop.

Here are the notes from the help about EnableCancelKey:
On Error GoTo handleCancel
Application.EnableCancelKey = xlErrorHandler
MsgBox "This may take a long time: press ESC to cancel"
For x = 1 To 1000000 ' Do something 1,000,000 times (long!)
' do something here
Next x

handleCancel:
If Err = 18 Then
MsgBox "You cancelled"
End If


"Tim Williams" wrote:


Check Help for: EnableCancelKey

Tim

"Mike" wrote in message
...
I have a repetitive loop in a macro that I want to run repeatedly until the
user decides to stop it. I tried having a non-modal userform with a toggle
button which when pushed, it would loop out of the repetitive loop.
However,
since the macro is busy in the code, I cannot push the button in the user
form. Does anyone have any ideas on how a user can intervene to stop the
code
from the repetitive loop? The userform is just an idea, but anything that
works would be great.

Thanks for any help!
Mike






  #9   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 1,588
Default Stopping repetitive loop execution through user form (or other

I'm not clear on exactly what the issue is. Don't you just have one
procedure which loops?
Or is it calling other procedures from within the loop? If so then yes you
will need an error handler
in each procedure. Or you could let the error "bubble up" to the main
procedure and handle it there.

Tim


"Mike" wrote in message
...
Tim,

I can use a global flag, but then I would need the Error Handler & Resume
logic in EACH procedure that I call. Is there a way that I can avoid that?

Thanks!

"Tim Williams" wrote:

You could always set a [global] flag in the error handler, and then use
that to signal to other procedures to tidy up and then exit.

--
Tim Williams
Palo Alto, CA


"Mike" wrote in message
...
I found that the following line works well:
Resume Next

This, however, will only go to the next line in the CURRENT procedure.
Is
there a way to go back to the current line in any procedure (especially
a
CALLED procedure)?

Thanks!

"Mike" wrote:

This is almost exactly what I need! If I hit the ESC key and need to
finish
up my loop (for some cleanup), is there a way to go back into the
loop and
finish up the current iteration. Essentially, I need to set a trigger
"GetOutOfLoop" by pushing the ESC key and continue at the current
line until
the end of the loop.

Here are the notes from the help about EnableCancelKey:
On Error GoTo handleCancel
Application.EnableCancelKey = xlErrorHandler
MsgBox "This may take a long time: press ESC to cancel"
For x = 1 To 1000000 ' Do something 1,000,000 times (long!)
' do something here
Next x

handleCancel:
If Err = 18 Then
MsgBox "You cancelled"
End If


"Tim Williams" wrote:


Check Help for: EnableCancelKey

Tim

"Mike" wrote in message
...
I have a repetitive loop in a macro that I want to run repeatedly
until the
user decides to stop it. I tried having a non-modal userform with
a toggle
button which when pushed, it would loop out of the repetitive
loop.
However,
since the macro is busy in the code, I cannot push the button in
the user
form. Does anyone have any ideas on how a user can intervene to
stop the
code
from the repetitive loop? The userform is just an idea, but
anything that
works would be great.

Thanks for any help!
Mike








Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Syntax for stopping a Do Loop? bondjel Excel Discussion (Misc queries) 5 March 22nd 10 01:35 PM
Convert repetitive IF statements to array loop? bntringa[_4_] Excel Programming 5 January 27th 06 09:45 PM
Stopping Code from Running whilst in Loop... Chris Gorham Excel Programming 2 November 21st 05 07:27 AM
message without stopping execution? Stefi Excel Programming 19 July 14th 05 12:08 PM
Dynamic execution of a loop Jeroen Kluytmans Excel Programming 1 February 23rd 04 04:09 PM


All times are GMT +1. The time now is 06:01 AM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"