I have a macro that hides all the blank rows in a range except for three. This is very, almost quicker to do it manually. I have seen multiple ways to hide rows but not much in the way of leaving three blanks still visible. The workbook basically loads information for each day of the week as indicated by the code below. The macro is then run to hide blank rows. You can see that there are three Header rows for each day of the week that are not hidden. This works well but is extremely slow for some reason
Code:
Sub Hide_Row_1()
Dim irow As Long
Application.ScreenUpdating = False
'Monday hide blank rows
For irow = 9 To 73
If Cells(irow, 2) = Empty Then Rows(irow + 3).Hidden = True
Next irow
'Tuesday hide blank rows
For irow = 74 To 76
If Cells(irow, 2) = Empty Then Rows(irow).Hidden = False
Next irow
For irow = 77 To 141
If Cells(irow, 2) = Empty Then Rows(irow + 3).Hidden = True
Next irow
'Wednesday hide blank rows
For irow = 142 To 144
If Cells(irow, 2) = Empty Then Rows(irow).Hidden = False
Next irow
For irow = 145 To 174
If Cells(irow, 2) = Empty Then Rows(irow + 3).Hidden = True
Next irow
'Thursday hide blank rows
For irow = 175 To 177
If Cells(irow, 2) = Empty Then Rows(irow).Hidden = False
Next irow
For irow = 178 To 207
If Cells(irow, 2) = Empty Then Rows(irow + 3).Hidden = True
Next irow
'Friday hide blank rows
For irow = 208 To 210
If Cells(irow, 2) = Empty Then Rows(irow).Hidden = False
Next irow
For irow = 211 To 240
If Cells(irow, 2) = Empty Then Rows(irow + 3).Hidden = True
Next irow
'Saturday hide blank rows
For irow = 241 To 243
If Cells(irow, 2) = Empty Then Rows(irow).Hidden = False
Next irow
For irow = 244 To 273
If Cells(irow, 2) = Empty Then Rows(irow + 3).Hidden = True
Next irow
'Sunday hide blank rows
For irow = 274 To 276
If Cells(irow, 2) = Empty Then Rows(irow).Hidden = False
Next irow
For irow = 277 To 306
If Cells(irow, 2) = Empty Then Rows(irow + 3).Hidden = True
Next irow
Application.ScreenUpdating = True
End Sub