How to Create a Mac Keyboard Shortcut to Show Hidden Excel Sheets
Question details
The user wants to establish a keyboard shortcut on macOS to quickly display hidden Excel sheets, as the traditional VBA method is no longer functional.

- Product
- Microsoft Excel for Mac
- Device & OS
- macOS
- Scenario
- Streamlining the workflow to unhide multiple worksheet tabs without having to manually click through the Excel menu interface.
- Observed behavior
- The VBA Workbook tabs CommandBars collection method results in an error because it is not supported in current Office for Mac versions.
Ensure you have administrator privileges on your Mac to modify System Settings and verify that your Excel application is fully updated.
Set Up an Application Shortcut via macOS System Settings
Use the built-in macOS keyboard shortcut settings to assign a custom hotkey directly to Excel's 'Unhide' menu option.
The CommandBars collection works with Office 2011 and earlier, but current versions of Office for Mac no longer support it for security and architectural reasons. To open the Unhide Sheets dialog efficiently, you can bypass VBA entirely by adding a targeted application keyboard shortcut in your Mac's System Settings.
Click the Apple menu in the top-left corner of your screen and select 'System Settings' (or 'System Preferences' on older macOS versions).
Scroll down the left sidebar to find and click on 'Keyboard', then click the 'Keyboard Shortcuts...' button on the right.
Select 'App Shortcuts' from the sidebar in the popup window. Click the '+' (plus) button to create a new customized shortcut.
In the 'Application' dropdown menu, select 'Microsoft Excel'. If it does not appear in the list, click 'Other...' at the bottom of the dropdown and select Excel from your Applications folder.
In the 'Menu Title' field, you must type the exact menu path. Type 'Format->Sheet->Unhide...' (without quotes, making sure to include the three dots at the end).
Click inside the 'Keyboard Shortcut' field and press the key combination you wish to use (e.g., Command + Shift + U). Click 'Done' to save.

Try WPS Office for Mac for Seamless Spreadsheet Management
If dealing with deprecated VBA commands and complex macOS system settings is slowing down your workflow, consider switching to WPS Office. It provides a lightweight, highly compatible alternative with intuitive sheet management that works smoothly on Mac out of the box.
- 1. Download the Mac App: Visit the official WPS Office website and download the dedicated installer for macOS.
- 2. Open Your Spreadsheets: Launch WPS Spreadsheet and effortlessly open any existing Microsoft Excel files.
- 3. Manage Sheets Easily: Right-click on any sheet tab at the bottom of the window to quickly hide or unhide sheets using the user-friendly interface.

Frequently Asked Questions
Why did the CommandBars VBA method stop working in Excel for Mac?
Microsoft deprecated the CommandBars collection in modern versions of Office for Mac (post-Office 2011) to align with updated Apple security policies and a newer application architecture. Macros that rely on this outdated collection will throw an execution error.
Can I use the exact same shortcut mapping process on Windows?
No, macOS App Shortcuts are a feature exclusive to the Apple operating system. On a Windows PC, you can access the Unhide dialog sequentially by pressing Alt, followed by H, O, U, and L, or you can add the Unhide tool to your Quick Access Toolbar.
Why is my new Mac keyboard shortcut not working in Excel?
This usually happens if the Menu Title was entered incorrectly. It must be an exact match, including spaces, capitalization, and punctuation. For Excel's unhide feature, the exact string is 'Format->Sheet->Unhide...' (ensure you type three periods, not a single ellipsis character).
Is there a shortcut to unhide all sheets at once?
By default, Excel requires you to unhide sheets one by one through the dialog box. To unhide all sheets simultaneously, you would need to write a new VBA macro that loops through all worksheets and sets their visibility to True, then assign a shortcut to that specific macro.




