If I'm understanding you correctly, you can check the file name when opening and "do this" if the file name is Master.xlsm and (else) "do that" if the file name isn't Master.xlsm.
First scenario ---I do pretty much the same thing for scheduling templates. I have a central file that I use to create other files for each week. The weekly file is just a copy of the central file with a different file name. I use Save Copy As to create the new weekly file. Depending on the file name when opening, they see different worksheets for either , 1) creating appointments or 2) see the worksheets that has the macro to create another weeks schedule ("Open the books for another week out).
Second scenario---In a similar process, I have people pick up template from SharePoint, and depending on the file name, they can be presented with a user form that asks for information. When they answer questions, and close the user form, I use the information from the user form to create a file name and use Thisworkbook.SaveAs to a specific folder and close the template (without saving it).
Have you though about just keeping the Master.xlsm file open in the background. As in the second scenario ---When you open the file, check the file name. If the file name is master, get the necessary information for the new file name and do a Thisworkbook.SaveAs, but keep the New file open. Since you are already working with the file with the new file name you won't mess up your master file. Continue your work on the new file and save and close. The blank master will already be open ready for you to start on the next one. You can rerun the macro that checks the file name and automatically get the information for the next file and proceed from there.
Hope this helps
Mark