Another alternative with less interaction between VBA and the spreadsheet, no real need to turn off calculation and screenupdating:
Sub Hide_Dates2()
Dim rngHide As Range, c As Range
With Range("I29:I79,I82:I132")
.EntireRow.Hidden = False
For Each c In .Cells
If IsDate(c.Value) And c.Value > Date Then
If rngHide Is Nothing Then Set rngHide = c _
Else Set rngHide = Application.Union(rngHide, c)
End If
Next
End With
If Not rngHide Is Nothing Then rngHide.EntireRow.Hidden = True
End Sub
Cheers, berlan
Bookmarks