I still think you have missed xld's point. Consider this:
1. You open the workbook, then sheets get unhidden. No problem.
2. You make some changes. Fine
3. You decide you don't want those changes so want to close the workbook without saving. At this point, your code cannot simply hide the sheets again and save the workbook because that will save the changes you don't want. So you have two choices:
i) You close the workbook unsaved, reopen it, hide the sheets and then save and close it.
ii) You close the workbook without hiding the sheets and hope that macros are enabled next time it is opened.

Regards,
Rory