Microsoft Excel has hundreds of functions and commands, but even so there are some things the Microsoft engineers failed to include. One of my recurrent annoyances is the lack of a command to unhide more than one sheet at a time. Hiding several sheets at once is very easy: you just select them by holding down the Ctrl key and then hide the group from the Format menu. The unhide option on the other hand presents you with a list of hidden sheets where you can only select one item to display it again.
When working with large files and lots of sheets, I prefer to hide the sheets where data is stored or where intermediary calculations are performed, and leave only the final results and charts visible to improve the readability of the file. But Excel makes it hard to bring back these sheets if you want to edit them again.
The only solution I have found to this problem is to create a VBA macro that runs through the list of sheets and toggles their status to visible. The code is very short, only a couple of lines:
' Unhide all sheets with one click
Dim sh As Worksheet
For Each sh In Sheets
sh.Visible = xlSheetVisible
You can add this code to your file by opening the Visual Basic Editor (for example with the keyboard shortcut Alt+F11) and pasting the code in a new module. If you also protect your hidden sheets, you can add the line sh.Unprotect in the For Each… Next loop to easily unprotect all the sheets in the file.
To integrate the new function in Excel, the most efficient solution is to create a new menu entry (for older Excel versions, including 2003) or a new button and assign this macro to it. And if you want the macro to be available in all the new files, you should add it directly in the Excel default template, following the instructions in this article.