Yes, your way of selecting which macro to run with the current button makes much more sense. This is also how the application SoundFlow does this, for the people who are familiar with that app. I will suggest Peter this:
For more information, see the wiki Searching the Forum for Answers section.