I just gave you the code needed to do it, I am unsure how you want to implement it.... truth is the first line you can put in a sub that you just run manually, it will need to be run whenever you want to make the sheet hidden again.
as for the unhide, make a button wherever you need it, and then assign it a macro with just one line of code:
Replace "Sheet1" with the name of the actual sheet in question. In another macro that you run manually I guess (or another button) you can run the code to make it hidden in such a way that only code can unhide it, again, replacing the sheet name as needed:
Bookmarks