A few suggestions I would make to this macro, if you really want to use it,
a) make the first line be '/mlock', which is shorthand for /macrolock. This will block restarting the macro, no matter how fast you mash, until the current instance of the macro has finished executing.
b) make as many lines of this macro be the action you want to be used as possible.
c) move everything but the /mlock and /macroerror off commands to the end, after the /ac commands.
I would still advise against macroing your gcds, as they do not get queued like pressing the gcd itself, same with your ogcds. However, there are niche use-cases where this can be useful. For instance, a macro of mine that I use a lot while playing DNC:
/mlockI have 2 more of these for <7> and <8>, respectively, and they allow me to swap my dance partner in a single gcd (albeit with a microclip due to macros not queueing up), most notably WITHOUT needing to untarget the boss at any point.
/macroerror off
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
/ac "Closed Position" <6>
Another niche use case for macros, a macro to make a certain variation of the fire/ice towers mechanic in Dragonsong's Reprise (Ultimate) more consistent:
/mlockThis macro allows you to move at just the right pace to bait the meteor drops so they don't detonate, for when you dont have enough room to walk without stopping.
/merror off
/automove on <wait.1>
/automove off
/echo
/echo
/echo
/echo
/echo
/echo
/echo
/echo
/echo
/echo
/echo