Great discussion here! Thanks for opening the thread @alltiagocom.
There are some subtle but important details with submacros and subroutines that I discussed in another thread: Avoiding Upgrade Issues with Submacros and Subroutines
The topic is a bit advanced, but if you plan share submacros and subroutines on the forum, I suggest you check it out.