按确切日期过滤电子表格(MM / DD / YYYY)

时间:2017-11-06 15:48:27

标签: excel vba excel-vba

我正在构建一个从用户表单收集数据的工具,然后最终用户应该能够过滤所有数据的主集并将其复制到电子邮件中。出于某种原因,我的过滤器不会将设置精简到确切的日期,而是仅降低到月份。日期存储在userform文本框中,该文本框使用当前日期自动填充,但如果用户选择报告旧数据,则可以更改日期。这是我的过滤器代码;

    Private Sub CommandButton6_Click()


Sheets("Master").ListObjects("Append1").Range.AutoFilter Field:=1, Operator:= _
        xlFilterValues, Criteria2:=Array(1, date2_txtb)

End Sub

date2_txtb =包含日期的文本框 Append1:构成" Master Set"

的修改后的查询

更新:

Private Sub UserForm_Initialize()
date2_txtb.Text = Format(Now(), "MM/DD/YYYY")
End Sub

1 个答案:

答案 0 :(得分:2)

我认为这就是你想要的。

date2_txtb = "11/11/2017"

Dim vDate As Date

Dim lDate As Long

vDate = DateSerial(Year(date2_txtb), Month(date2_txtb), Day(date2_txtb))

lDate = vDate

ThisWorkbook.Sheets("Master").ListObjects("Append1").Range.AutoFilter Field:=1, Criteria1:=">=" & lDate, Operator:=xlAnd, Criteria2:="<" & lDate + 1