带用户输入的VBA时间过滤器

带用户输入的VBA时间过滤器,vba,excel,Vba,Excel,我有下一个VBA代码,知道如何在两个日期范围之间进行过滤: Public Sub MyFilter() Dim lngStart As Date, lngEnd As Date lngStart = Range("b2").Value 'assume this is the start date lngEnd = Range("b3").Value 'assume this is the end date Range("A5:T5").AutoFilter Fie

我有下一个VBA代码,知道如何在两个日期范围之间进行过滤:

Public Sub MyFilter()
    Dim lngStart As Date, lngEnd As Date
    lngStart = Range("b2").Value 'assume this is the start date
    lngEnd = Range("b3").Value 'assume this is the end date
    Range("A5:T5").AutoFilter Field:=17, _
        Criteria1:=">=" & lngStart, _
        Operator:=xlAnd, _
        Criteria2:="<=" & lngEnd


End Sub
公共子MyFilter()
Dim lngStart As Date,LNGED As Date
lngStart=范围(“b2”)。值“假设这是开始日期”
lngEnd=范围(“b3”)。值“假设这是结束日期
范围(“A5:T5”)。自动筛选字段:=17_
标准1:=“>=”&lngStart_
运算符:=xlAnd_

标准2:=“我不确定我是否理解你的问题,所以我猜了一下。
看看这个:

Public Sub MyFilter()
    Dim StartDate As Date, EndDate As Date

    StartDate = DateAdd("h", -Range("b2"), Now)
    EndDate = Now

    Range("A5:T5").AutoFilter Field:=17, _
        Criteria1:=">=" & StartDate, _
        Operator:=xlAnd, _
        Criteria2:="<=" & EndDate

End Sub
公共子MyFilter()
Dim StartDate作为日期,EndDate作为日期
StartDate=DateAdd(“h”、-范围(“b2”),现在)
EndDate=现在
范围(“A5:T5”)。自动筛选字段:=17_
标准1:=“>=”&开始日期_
运算符:=xlAnd_

准则2:=“嗨,谢谢你,这就是我要找的。。我还有两个简短的问题忘了提。1.如果我在同一列下有空白单元格,我怎样才能得到它们呢?2.如果我希望我的结束时间总是在我打开文件的同一天上午8:00,我如何修改代码?谢谢1.我不明白。2.替换为关于1的
EndDate=DateAdd(“h”,“8”,Date)
。我在同一列中有更多的单元格包含“null”数据(空单元格),我也想检索它们。我明白了。我不明白您想用空单元格=“(blank)”做什么--它在Excel中的显示方式