2017-10-17 111 views
0

我正在根据日期标准来筛选表格。我想我以某种方式消灭日期格式,并且找不到能够返回结果的组合。子表单上有有效的日期;标准应返回结果 - 但返回零记录。我尝试了DATE函数以及明确的#10/17/2017#类型值。MS Access VBA - 使用日期的筛选器表格

Dim strFilter As String 

Select Case Me!frmFilter.Value 

    Case 1 'All 
     Forms![InventoryList].[InventoryList subform].Form.FilterOn = False 
    Case 2 'Active 
     strFilter = "Forms![InventoryList].[InventoryList subform].Form.[StartDate] > #" & Date & "#" 
     Forms![InventoryList].[InventoryList subform].Form.Filter = strFilter 
     Forms![InventoryList].[InventoryList subform].Form.FilterOn = True 
    Case 3 'Pending 
     'do something else 

End Select 

End Sub 

任何建议可以帮助我将这项任务向前推进一点点?

谢谢!

+0

什么数据类型是'StartDate'的访问? – DiskJunky

+0

“StartDate”来自查询,格式为“常规日期”。查询的源表定义为“日期/时间”。 –

回答

2

这有如果StartDate工作是日期[InventoryList subform]是子窗体控制的名字:

Select Case Me!frmFilter.Value 
    Case 1 'All 
     Forms![InventoryList]![InventoryList subform].Form.FilterOn = False 
    Case 2 'Active 
     strFilter = "[StartDate] > Date()" 
     Forms![InventoryList]![InventoryList subform].Form.Filter = strFilter 
     Forms![InventoryList]![InventoryList subform].Form.FilterOn = True 
    Case 3 'Pending 
     'do something else 
End Select 
+0

谢谢。按预期工作。埃里克也在正确的轨道上,但我仍然错过了公交车,过滤器过于复杂。 –