Sounds like the problem is that he wants to remount when some of his chars are still mounted. What you could try is to add a keyboard modifier to your macro.

/cast [nomounted, nomodifier] [mounted, modifier:shift] <name of mount item>

This way you can tell all your chars to either mount or dismount.