It is possible to run multiple macros with Attachmate on the same desktop, but is really complicated.
You must reference your sessions by name. Or pass the session name to the macro. We are using a web interface that calls "<path>\ebrun.exe" "<path>macro.ebm". And Passes the session name via the command line. (not my magic, I will elaborare when I understand more thorougly)
Any Global variables must not exist in the other macro. It is safest to use all local and pass them back and forth.
The MUCH EASIER solution for us, we set up a Windows Server, then open a Terminal service(TS) session and start the session and macro there. You can run as many macros as you can open sessions. If you close the session window you can rejoin that same indexed session next time you use TS to connect. Std licensing only allows for 2 terminal service sessions, but with a Terminal Service license you could do 100's. Each desktop has its own operating buffer, so there are no variable conflicts, and no need to define a session name to the macro. I can use the same session file and macro file in all the sessions.
I hope this is helpful