使用Excel VBA,如何删除日期介于今天和消息框中的日期之间的行。
到目前为止,我所做的只是为了从指定的日期和年份获得该月的第一个日期,但我要做的是以下内容:
删除列P中的日期早于指定月份的所有行。即 如果用户选择四月,则删除列P中的日期早于四月的所有内容。
P列以日期/时间格式存储日期dd / mm / yyyy hh:mm:ss
Sub Popup()
Dim Month
Dim MonthDate
Dim Year
Month = Application.InputBox("Enter the number for the month, i.e 5 for May, 11 for November")
Year = Application.InputBox("Enter full year, i.e. 2016")
MonthDate = DateSerial(Year, Month, 1)
With Sheets("Tickets")
.AutoFilterMode = False
With Range("p1", Range("p" & Rows.Count).End(xlUp))
.AutoFilter 1, "<" & MonthDate
On Error Resume Next
.Offset(1).SpecialCells(12).EntireRow.Delete
End With
.AutoFilterMode = False
End With
End Sub
我已经尝试过上述代码,但它会删除2016年之前的所有内容,而不是说2016年4月(指定时间)