Is there a way to delete all hidden rows in a worksheet?

Excel Facts

Lock one reference in a formula
Need 1 part of a formula to always point to the same range? use $ signs: $V$2:$Z$99 will always point to V2:Z99, even after copying
This macro did the trick for me:

Code:
Sub Delete_Hidden()
Dim r As Long
    For r = 1 To 100
    'This will check to row 100
        If Rows(r).Hidden = True Then
            Rows(r).EntireRow.Delete
            r = r - 1
        End If
    Next r
End Sub
 
Upvote 0
Bit more convoluted but probably faster if you have a lot of rows: -

Code:
Public Sub DeleteHiddenRows()
Dim rngVisible As Range
Dim rngAll As Range

On Error Resume Next ' In case there are no hidden/ visible rows
Application.ScreenUpdating = False
Set rngVisible = Range("A:A").SpecialCells(xlCellTypeVisible)
Set rngAll = Range("A:A")


With rngAll
    .EntireRow.Hidden = False ' Unhide all rows
    rngVisible.EntireRow.Hidden = True ' Hide rows originally visible
    .SpecialCells(xlCellTypeVisible).EntireRow.Delete ' Delete 'flipped' rows
    .EntireRow.Hidden = False ' Unhide all rows
End With
Application.ScreenUpdating = True

On Error GoTo 0

End Sub
 
Upvote 0

Forum statistics

Threads
1,221,695
Messages
6,161,361
Members
451,699
Latest member
sfairbro

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top