如何按特定日期过滤

时间:2015-06-12 08:08:50

标签: excel vba

在下面的代码中,我必须按日期过滤,但它不按我在inputbox中提到的日期过滤。我觉得过滤格式有问题。

请帮忙。非常感谢

sDate = InputBox("Choose Start date (dd/mm/yyyy)")
EDate = InputBox("Choose End date (dd/mm/yyyy)")
 Selection.AutoFilter
    ActiveSheet.Range("$A$2:$BP$4181").AutoFilter Field:=8, Criteria2:=sDate

1 个答案:

答案 0 :(得分:0)

试试这个:

Sub testDate()
Dim sDate As Date, _
    eDate As Date

sDate = CDate(InputBox("Choose Start date (dd/mm/yyyy)"))
eDate = CDate(InputBox("Choose End date (dd/mm/yyyy)"))

ActiveSheet.Range("$A$2:$BP$4181").AutoFilter Field:=8, Criteria1:=">=" & sDate, Criteria2:="<=" & eDate

End Sub

由于InputBox为您提供了一个String,您可能希望在使用它进行过滤之前将其转换为日期