Hiding/Unhiding Sheets in Read Only mode

I need to allow users to open a file ‘read only’ and then a macro must hide or unhide certain sheets based on conditions
The file is saved with protection
Tools > protect spreadsheet structure

So here’s the macro im attempting after the file is opened
thiscomponent.unprotect “password”
sheet1.isvisible=true
sheet2.isvisible=false
thiscomponent.protect “password”

but this works only if the file is not read only
any way to achieve this with read only ?
cell protection etc. wont do
I simply don’t want users to see some sheets and there should be no way for them to change this