Cancel an instance of a macro

I have a macro that has a 5 minute pause in it. If the macro is run again during that 5 minute pause I want to cancel the previous instance of it, then continue running the current macro. Currently I use “Cancel All Other Macros” to do this, but if I ever have a situation where 2 macros happen to be running, this will kill them both.

If I understand Cancel This Macro and Cancel Just This Macro correctly they only operate on the current instance of a macro, not instances that may already be running.

No, there isn’t any way to cancel specific instances of macros.

It’s very tricky to come up with a workaround, but I think something like this would work:

  • Semaphore Lock “First Lock”
  • Pause 10 seconds
  • Repeat 22 times
    • Semaphore Unlock “First Lock”
    • Pause 5 seconds
    • Semaphore Lock “First Lock” with 0.5 second timeout

I think that will work. If the macro is triggered a bunch of times, the delay will be longer than 2 minutes as each one will stack up an extra 10 second pausing.

1 Like