在日期之间过滤时VBA错误3075

时间:2018-04-11 12:56:49

标签: vba date access-vba filtering

我知道有很多关于这个主题的回答问题,但没有一个回答以下问题: 我有这个简单的代码:

Private Sub btnHwEOLNext2_Click()

Dim filterString As String
Dim startDate As Date
Dim endDate As Date

startDate = Date
endDate = Date + 730

filterString = "[HW End of Support] BETWEEN '" & startDate & " And " & endDate & "'"

Me.Filter = filterString
DoCmd.SetOrderBy "[HW End of Support] ASC"
Me.FilterOn = True

End Sub

我要做的就是在2个日期之间进行过滤。 startDate日期始终是您使用表单的日期,而endDate始终是startDate

之后的730天

为什么我继续

  

错误3075

?求救!

1 个答案:

答案 0 :(得分:2)

如果您将日期置于MM-DD-YYYY个标志之间,则VBA会将其视为日期。

到目前为止,SQL正在使用带有#的美国日期系统,您可以在解析之前更改"[HW End] BETWEEN #" & Format(sd,"MM-DD-YYYY") & "# And #" & Format(ed,"MM-DD-YYYY") & "#" 符号之间的格式:

{{1}}