Sheet Setup for ReadOnly Access for a User Still Allows Access to Run a Macro (via Button Click)

Sheet Setup for ReadOnly Access for a User Still Allows Access to Run a Macro (via Button Click)

I have a multi-sheet document that i have setup for multiple users.  When a tab is setup as read-only for a user they cannot edit the sheet contents as expected; however they still have access to invoke macros via a button on that sheet.  In my case the button/macro performs updates that i would not like the user to be able to invoke.
 
Is there anyway to prohibit users from invoking a macro/button on a tab if they have read-only access to that tab?  I don't want to hide the tab since doing so will no longer allow the users to export the sheet.