假设我有一个StartDate:02/02/2014 10:00和EndDate:01/30/2014 15:00是否可以在查询中包含此结果?
答案 0 :(得分:0)
不确定您所拥有的日期是否在表中,但只是使用查询,不,这是不可能的。如果你有一个日期表,但是日期有差距,那么,不,不可能。
如果您愿意花时间在一些VBA代码上,那么YES,您可以生产出您想要的东西。假设您有一个输入STARTDATE和ENDDATE的表单,可以使用下面的代码创建日期表,然后将查询设置为LEFT JOIN(如果您有另一个表):
Private Sub SomeButton_Click()
Dim strSQL As String
Dim dDate As Date
DoCmd.SetWarnings False
' NOTE!!! Either create table manually, or comment out next two lines after first time!!!
strSQL = "CREATE TABLE tempDates (tDate DateTime);"
CurrentDb.Execute strSQL
strSQL = "delete * from tempDates"
CurrentDb.Execute strSQL
dDate = #1/1/2014# 'Forms!frmYours!txtStartDate ' Set starting date
Do While dDate < #3/1/2014# 'Forms!frmYours!txtEndDate ' Set Ending date
strSQL = "INSERT INTO tempDates (tDate) SELECT '" & dDate & "' AS Expr1;"
CurrentDb.Execute strSQL
dDate = dDate + 1
Loop
DoCmd.SetWarnings True
End Sub