If you are saying that the problem is that this macro gets triggered multiple times, that’s easy to solve. (1) Start the macro with a Semaphore Lock action, and enter a unique name into the action, and set its options as shown in the following image, (2) End the macro with a “Pause 60 seconds” action.
If you add both of the above actions, the first macro will run to completion after 60 seconds, while anything else that triggers the same macro during those 60 seconds will abort.