Sub deldate()
Dim LR As Long, i As Long
LR = Range("A" & Rows.Count).End(xlUp).Row
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
For i = LR To 1 Step -1
With Range("A" & i)
If IsDate(.Value) Then
If .Value > Date Or Month(.Value) = Month(Date) Then Rows(i).Delete
End If
End With
Next i
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub