Skip to footer content
EXCEL TOOLS

How to Unhide Rows in Excel: A Quick Tutorial (2026)

You are working through a spreadsheet and you notice the row numbers jump from 4 to 9. Rows 5, 6, 7, and 8 are missing. The data is still there, just hidden. Knowing how to unhide rows in excel is one of those skills that saves a lot of time, especially when working with files built by someone else. The fastest path: select the rows surrounding the hidden ones by clicking row 4, holding Shift, and clicking row 9, then right-click and choose Unhide. The hidden rows reappear instantly.

That covers the most common case. The situation gets more interesting when hidden rows are at the very top of the sheet, when an entire sheet has hidden rows scattered throughout, or when the usual methods do not work because of filters or worksheet protection. Each of those scenarios needs a different approach.

This guide covers every reliable method for how to unhide rows in excel: selecting surrounding rows and right-clicking, using the Home tab ribbon, using the Name Box to reach hidden top rows, unhiding all rows at once with the select-all triangle, using keyboard shortcuts, adjusting row height directly, dealing with filtered rows, and using Visual Basic for automation. The same principles apply when you need to unhide columns, and the section on hidden columns is covered briefly in the troubleshooting area. A troubleshooting section handles the cases where rows stay hidden despite your best efforts. Developers who need to unhide rows programmatically will find a short section at the end showing how IronXL handles row.Hidden = false in C#.

How to Identify Hidden Rows

Before unhiding anything, you need to find hidden rows in the first place. Hidden rows can be identified in two ways. First, look for gaps in the row numbers along the left side of the spreadsheet. If the numbers jump from 4 to 9, rows 5 through 8 are hidden. Second, look for a double line or thicker border line between two row numbers in the row header area. That double line is Microsoft Excel's visual indicator that one or more rows are hidden between those two visible row numbers. When rows contain hidden data such as salary figures, personal details, or interim calculation steps, these same visual cues apply.

In the screenshot below, the row numbers jump from 4 to 9 and a faint double line is visible between rows 4 and 9 in the row header, confirming that rows 5, 6, 7, and 8 are hidden.

How to Unhide Rows in Excel: A Quick Tutorial (2026): Image 1 - Image 1 of 8 related to How to Unhide Rows in Excel: A Quick Tutorial (2026)

Add image alt text

Method 1: Right-Click to Unhide Specific Rows (Fastest)

This is the method most people use, and it is the fastest path for unhiding specific rows in excel when you know roughly where they are.

  1. Click the row number above the hidden rows. For example, if rows 5 through 8 are hidden, click row number 4 in the row header to select the entire row.

  2. Hold Shift and click the row number below the hidden rows. Click row number 9 to extend your selection to include the gap where the hidden rows sit.

  3. Right-click anywhere in the selected row numbers.
  4. Select Unhide from the context menu.

Rows 5, 6, 7, and 8 reappear between rows 4 and 9. Excel restores them to their original row height and content. In the screenshot below, rows 4 and 9 are selected as a range and the right-click context menu shows the Unhide option highlighted.

How to Unhide Rows in Excel: A Quick Tutorial (2026): Image 2 - Image 2 of 8 related to How to Unhide Rows in Excel: A Quick Tutorial (2026)

Add image alt text

How to Unhide Rows in Excel: A Quick Tutorial (2026): Image 3 - Image 3 of 8 related to How to Unhide Rows in Excel: A Quick Tutorial (2026)

Add image alt text

Why select both surrounding rows: Excel needs to know which hidden rows to reveal. Selecting only the row above or only the row below is not enough. You must select a range that spans across the hidden section so Excel can identify which hidden rows are caught inside the selection.

Multiple groups of hidden rows: If your spreadsheet has several groups of hidden rows scattered in different places, you need to select unhide for each group separately using this method. Hold the ctrl key while clicking non-adjacent row numbers if you want to select unhide multiple rows in different parts of the sheet at once, then right-click and choose Unhide to reveal all selected hidden rows simultaneously. For very large spreadsheets, double clicking on the double line between row headers is another quick way to expand hidden rows one group at a time. Use Method 4 to unhide all rows across the entire sheet in a single step.

Method 2: Unhide Rows Using the Home Tab

If you prefer working through the excel ribbon rather than right-clicking, the Home tab gives you access to the same Unhide function.

  1. Select the rows surrounding the hidden ones the same way as Method 1. Click row 4, hold Shift, and click row 9.
  2. Go to the Home tab in the ribbon.

  3. In the cells group, click the Format button dropdown.

  4. Under the Visibility section, hover over Hide & Unhide.
  5. Click Unhide Rows from the submenu.

The hidden rows reappear. The format menu path is particularly useful if you are already working in the Home tab and do not want to right-click. In the screenshot below, the Format dropdown is open with the Hide & Unhide submenu visible and "Unhide Rows" highlighted.

How to Unhide Rows in Excel: A Quick Tutorial (2026): Image 4 - Image 4 of 8 related to How to Unhide Rows in Excel: A Quick Tutorial (2026)

Add image alt text

Method 3: Unhide Top Rows Using the Name Box

If row 1 or any of the first few rows in your sheet are hidden, the right-click method does not work cleanly because there is no row above the hidden ones to click. This is the simple trick that solves it. The first row being hidden is also the most common time rows disappear without an obvious explanation, since nothing above the sheet suggests they are missing.

  1. Click the Name Box, the small cell address box at the top-left of the spreadsheet just above column A, showing the current cell address such as A1.
  2. Type A1 into the Name Box and press Enter. This navigates directly to cell A1 even though row 1 is hidden and not visible on screen.

  3. Go to Home > Format > Hide & Unhide > Unhide Rows, or press Ctrl + Shift + 9.

Row 1 reappears. The Name Box method works for any hidden top rows because it lets you select cells in those rows without needing to click on the row header. In the screenshot below, "A1" is typed in the Name Box with the cursor active inside it, and the spreadsheet shows that row 1 is not visible in the row headers.

How to Unhide Rows in Excel: A Quick Tutorial (2026): Image 5 - Image 5 of 8 related to How to Unhide Rows in Excel: A Quick Tutorial (2026)

Add image alt text

Unhiding a specific hidden row by number: The same Name Box technique works for any hidden row. If row 12 is hidden, type A12 in the Name Box and press Enter to select it, then use Format > Unhide Rows to reveal it. You can also type a range like A5:A8 to select all four hidden rows at once before unhiding.

Method 4: Unhide All Rows at Once

When you need to unhide all the hidden rows across an entire sheet in one step, use the select-all triangle rather than hunting for each group of hidden rows individually.

  1. Click the small triangle in the upper left corner of the spreadsheet, at the intersection of the row numbers and column letters. This selects the entire sheet.

  2. Right-click on any row number in the row header.
  3. Select Unhide from the context menu.

All the hidden rows in the excel sheet become visible at once. This reveals every set of hidden rows regardless of where they are or how many there are. In the screenshot below, the select-all triangle in the upper left corner is highlighted, the entire sheet is selected (shown by the blue highlight across all cells), and the right-click context menu shows Unhide.

How to Unhide Rows in Excel: A Quick Tutorial (2026): Image 6 - Image 6 of 8 related to How to Unhide Rows in Excel: A Quick Tutorial (2026)

Add image alt text

Alternative keyboard path to select all: Instead of clicking the triangle, press Ctrl + A to select all cells in the spreadsheet, then right-click any row number and choose Unhide. This is the keyboard shortcut equivalent of clicking the select-all triangle and produces the same result: all the hidden rows in the sheet are revealed simultaneously. For related row and column visibility control in C#, see the IronXL autosize rows and columns guide.

Method 5: Keyboard Shortcut to Unhide Rows

Excel has a direct keyboard shortcut to unhide rows without opening any menu or dialog.

  1. Select the rows surrounding the hidden ones. For example, click row 4, hold Shift, and click row 9.
  2. Press Ctrl + Shift + 9 on Windows.

  3. On Mac, press Command + Shift + 9.

The hidden rows between your selection reappear immediately. To unhide all rows in the entire spreadsheet using only the keyboard, press Ctrl + A first to select all cells, then press Ctrl + Shift + 9. This is the fastest possible approach for revealing all the hidden rows without touching the mouse at all.

Press Ctrl + Shift + 9 vs Ctrl + 9: Ctrl + 9 is the hide shortcut. Pressing it on selected rows hides them. Ctrl + Shift + 9 is the unhide shortcut. These two are easy to confuse, so if you accidentally press Ctrl + 9 and rows disappear, press Ctrl + Shift + 9 immediately to bring them back.

Method 6: Unhide Rows by Adjusting Row Height

Sometimes rows appear hidden but are actually visible with a row height of zero or near zero, rather than being hidden through the standard Hide command. In that case, the Unhide option in the context menu may not work at all, and you need to set the row height directly instead.

  1. Select the rows that appear missing. If rows 5 through 8 seem hidden, select the range by clicking row 4, holding Shift, and clicking row 9 to include the zero-height rows in the selection.
  2. Go to Home > Format > Row Height in the cells group.

  3. In the Row Height dialog box, type a standard row height such as 15 and click OK.

The rows become visible at the specified height. For persistent hidden rows that do not respond to the usual Unhide command, setting a standard row height is the reliable fix. In the screenshot below, the Row Height dialog shows the value 15 being entered to restore hidden rows that have a height of zero.

How to Unhide Rows in Excel: A Quick Tutorial (2026): Image 7 - Image 7 of 8 related to How to Unhide Rows in Excel: A Quick Tutorial (2026)

Add image alt text

Why this happens: Hidden rows in excel may not be visible due to accidental row height adjustments that set the height to zero. This can happen when a user drags a row border too far up by mistake, or when a macro or import process sets row heights to zero rather than using the Hide command. The Unhide option in the right-click menu and the keyboard shortcut only work on rows that were hidden using the Hide command, not on rows with a zero height.

Method 7: Reveal Rows Hidden by Filters

Filtered rows are not the same as hidden rows, though they look identical on screen. When a filter is active, Excel hides rows that do not match the filter criteria. Those rows will not respond to the Unhide command because they are not technically hidden.

  1. Click any cell inside your data range.
  2. Go to the Data tab in the excel ribbon.

  3. Click Clear in the Sort & Filter group to remove all active filters.

All filtered rows reappear. Alternatively, go to Home > Sort & Filter > Clear to clear filters from the Home tab. To check whether filters are responsible for missing rows, look for the filter dropdown arrows on the header row and check whether any of the column letter indicators at the top show a funnel icon, which signals an active filter on that column.

How to Unhide Rows in Excel: A Quick Tutorial (2026): Image 8 - Image 8 of 8 related to How to Unhide Rows in Excel: A Quick Tutorial (2026)

Add image alt text

Select visible cells only: When working with filtered data, use Ctrl + Shift + End followed by Alt + ; (Windows) or Cmd + Shift + Z (Mac) to select visible cells only. This prevents accidentally copying or formatting the hidden rows beneath the filter. The select visible cells shortcut is essential when you want to paste or modify only the rows that are currently showing.

Method 8: Unhide Rows Using Visual Basic (VBA)

For large spreadsheets with many groups of hidden rows, or for automating the process across multiple sheets, Visual Basic macros let you unhide rows without any manual interaction.

Here's a simple VBA macro to unhide all rows and columns in the active sheet:

Sub UnhideAllRows()
    Rows.EntireRow.Hidden = False
End Sub
Sub UnhideAllRows()
    Rows.EntireRow.Hidden = False
End Sub
Sub UnhideAllRows()
    Rows.EntireRow.Hidden = False
End Sub
$vbLabelText   $csharpLabel

To unhide all rows across every sheet in the workbook:

Sub UnhideAllRowsAllSheets()
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        ws.Rows.EntireRow.Hidden = False
    Next ws
End Sub
Sub UnhideAllRowsAllSheets()
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        ws.Rows.EntireRow.Hidden = False
    Next ws
End Sub
Option Strict On



Sub UnhideAllRowsAllSheets()
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        ws.Rows.EntireRow.Hidden = False
    Next ws
End Sub
$vbLabelText   $csharpLabel

To unhide specific rows, such as rows 5 through 8:

Sub UnhideSpecificRows()
    Rows("5:8").Hidden = False
End Sub
Sub UnhideSpecificRows()
    Rows("5:8").Hidden = False
End Sub
Sub UnhideSpecificRows()
    Rows("5:8").Hidden = False
End Sub
$vbLabelText   $csharpLabel

Press Alt + F11 to open the Visual Basic editor, go to Insert > Module, paste the code, and press F5 to run it. In the screenshot below, the VBA editor window shows the UnhideAllRows macro with the code visible in the module pane.

Review tab and workbook protection: If the VBA macro runs but rows remain hidden, the worksheet may be protected. For security reasons, protection settings can prevent any row visibility changes including those made through VBA code. Go to Review tab > Unprotect Sheet (a password may be required) and then run the macro again.

Common Issues and Troubleshooting

Unhide is greyed out in the context menu

The worksheet is protected. Go to Review > Unprotect Sheet and try again. If a password is required, you will need to obtain it from whoever set the protection.

Rows are still hidden after clicking Unhide

The rows may have a row height of zero rather than being hidden through the Hide command. Select the surrounding rows, go to Home > Format > Row Height, type 15, and click OK to restore them.

Row 1 is not visible and the Name Box trick does not work

Make sure you type A1 in the Name Box and press Enter before trying to unhide. Pressing Enter is the critical step that actually navigates to the hidden cell. Also confirm the sheet is not protected, which would block the unhide action.

Rows reappear but the data looks different

If you were expecting specific rows and the data does not match, you may have applied the unhide to the wrong group of hidden rows. Check the row numbers carefully after unhiding to confirm which rows were revealed. In some cases, hidden cells within revealed rows may show formatting issues such as mismatched colors or borders if the original formatting was applied only to visible rows before hiding.

Hidden columns alongside hidden rows

When dealing with hidden columns at the same time, the process to unhide columns follows the same logic. Select the column letters on either side of the gap, right-click, and choose Unhide. To reveal all hidden columns in the sheet at once, click the select-all triangle and then right-click any column letter and choose Unhide.

Filters are hiding rows and Unhide does not work

Go to Data > Clear to remove all active filters. The context menu Unhide option has no effect on filtered rows because they are controlled by the filter, not the row hidden property.

Grouped rows have a collapse button hiding them

If rows are hidden via the Group feature (Data > Group), they are controlled by an outline level button on the left side of the screen rather than the standard Hide command. Click the + button next to the grouped rows to expand them, or go to Data > Ungroup to remove the grouping entirely.

Choosing the Right Method: Quick Reference

| Goal | What to do | | --- | --- | | Unhide specific hidden rows | Select rows above and below, right-click, Unhide | | Unhide rows using the ribbon | Home > Format > Hide & Unhide > Unhide Rows | | Unhide row 1 or top rows | Type A1 in the Name Box, Enter, then Ctrl + Shift + 9 | | Unhide all rows at once | Click select-all triangle, right-click any row number, Unhide | | Unhide rows using keyboard | Select surrounding rows, press Ctrl + Shift + 9 | | Fix rows hidden by zero height | Home > Format > Row Height > type 15 > OK | | Reveal rows hidden by filter | Data tab > Clear (in Sort & Filter group) | | Automate unhiding across sheets | VBA: ws.Rows.EntireRow.Hidden = False |

For Developers: Unhide Rows Programmatically with IronXL

If your application processes Excel files automatically, it will often need to reveal hidden rows as part of a data pipeline, audit tool, or report generator. IronXL lets you set row.Hidden = false directly on any row in C# without Microsoft Office installed on the server. For a full walkthrough, see the IronXL guide to unhiding rows and columns.

Here's how to unhide all rows in a worksheet and unhide specific rows:

using IronXL;
WorkBook workBook = WorkBook.Load("employee_data.xlsx");
WorkSheet sheet = workBook.DefaultWorkSheet;
// Unhide all rows in the worksheet
foreach (var row in sheet.Rows)
{
    row.Hidden = false;
}
// Unhide specific rows by index (zero-based: row 5 in Excel = index 4)
sheet.GetRow(4).Hidden = false;  // Row 5
sheet.GetRow(5).Hidden = false;  // Row 6
sheet.GetRow(6).Hidden = false;  // Row 7
sheet.GetRow(7).Hidden = false;  // Row 8
// Restore row height to standard if it was set to zero
sheet.GetRow(4).Height = 300;  // Height in twips (300 = ~15pt standard height)
workBook.SaveAs("employee_data_restored.xlsx");
using IronXL;
WorkBook workBook = WorkBook.Load("employee_data.xlsx");
WorkSheet sheet = workBook.DefaultWorkSheet;
// Unhide all rows in the worksheet
foreach (var row in sheet.Rows)
{
    row.Hidden = false;
}
// Unhide specific rows by index (zero-based: row 5 in Excel = index 4)
sheet.GetRow(4).Hidden = false;  // Row 5
sheet.GetRow(5).Hidden = false;  // Row 6
sheet.GetRow(6).Hidden = false;  // Row 7
sheet.GetRow(7).Hidden = false;  // Row 8
// Restore row height to standard if it was set to zero
sheet.GetRow(4).Height = 300;  // Height in twips (300 = ~15pt standard height)
workBook.SaveAs("employee_data_restored.xlsx");
Imports IronXL

Dim workBook As WorkBook = WorkBook.Load("employee_data.xlsx")
Dim sheet As WorkSheet = workBook.DefaultWorkSheet

' Unhide all rows in the worksheet
For Each row In sheet.Rows
    row.Hidden = False
Next

' Unhide specific rows by index (zero-based: row 5 in Excel = index 4)
sheet.GetRow(4).Hidden = False  ' Row 5
sheet.GetRow(5).Hidden = False  ' Row 6
sheet.GetRow(6).Hidden = False  ' Row 7
sheet.GetRow(7).Hidden = False  ' Row 8

' Restore row height to standard if it was set to zero
sheet.GetRow(4).Height = 300  ' Height in twips (300 = ~15pt standard height)

workBook.SaveAs("employee_data_restored.xlsx")
$vbLabelText   $csharpLabel

The Hidden property on each row maps directly to the same hidden flag that Excel's Hide and Unhide commands control. Setting it to false reveals the row immediately when the file is opened. For rows that were hidden by setting their height to zero rather than using the Hide command, setting the Height property restores them to a visible size.

IronXL also handles reading and writing Excel data, auto-resizing rows and columns, and processing large workbooks without requiring Microsoft Office on the server.

Getting started: Install via NuGet with Install-Package IronXL.Excel and start your free trial to test in your environment. IronXL runs on .NET 6+ and is compatible with Windows, Linux, macOS, Docker, Azure, and AWS.

Wrapping Up

Unhiding rows in excel is straightforward once you know which method matches the situation. For specific hidden rows, selecting the rows above and below and right-clicking is the fastest path. For all the hidden rows across an entire sheet at once, clicking the select-all triangle and choosing Unhide reveals everything in one step. When rows are at the very top of the sheet and the normal method does not work, the Name Box trick of typing A1 and pressing Enter gets you there without needing to scroll.

Keep in mind that filtered rows and rows with a zero row height look the same as truly hidden rows but need different fixes. Filters get cleared through the Data tab, and zero-height rows get fixed by manually setting the row height back to a standard value like 15. When pulling data from Excel into Power BI or another reporting tool and rows are missing from the output, check for hidden rows or active filters in the source Excel sheet before troubleshooting the data connection itself. For developers building tools that process Excel files automatically, IronXL's row.Hidden = false handles the whole thing in code so every file your application produces or processes has the correct row visibility from the start.

Jordi Bardia
Software Engineer
Jordi is most proficient in Python, C# and C++, when he isn’t leveraging his skills at Iron Software; he’s game programming. Sharing responsibilities for product testing, product development and research, Jordi adds immense value to continual product improvement. The varied experience keeps him challenged and engaged, and he ...
Read More

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me