【问题标题】:Trouble with an Access Query searching within a date range在日期范围内搜索访问查询时遇到问题
【发布时间】:2019-04-14 18:21:53
【问题描述】:

我有一个查询,它搜索已保存的记录并根据记录创建报告。某些字段可以独立搜索,也可以与保存记录的其他部分相关联进行搜索(例如,可以搜索 ID、位置和/或是否通知警方)。但是,我在按日期搜索时遇到了问题。

我有字段供用户输入所需日期范围的开始日期和结束日期。当填写 ONE 或 NEITHER 字段时,搜索会提取开始日期之后、结束日期之前或所有记录的所有记录。当两个字段都填满时,搜索会拉出一条所有字段都为空白的记录(表中不存在)。

每个可搜索字段在查询中使用相同的条件:

Like Nz([field that you're searching],"*")

但是日期范围使用了修改后的版本(抱歉,如果它超级笨重):

Like Nz(([Data_Input_Table].[Day_Current])>=[Forms]![Search_Form]![Start_Date_Lookup_text] And ([Data_Input_Table].[Day_Current])<=[Forms]![Search_Form]![End_Date_Lookup_text],"*")

理想情况下,我希望用户既不按开始日期也不按开始日期和结束日期进行搜索。

请帮忙!

【问题讨论】:

    标签: vba ms-access criteria date-range


    【解决方案1】:

    您不能在日期上使用 Like。试试这个:

    [Data_Input_Table].[Day_Current] >= Nz([Forms]![Search_Form]![Start_Date_Lookup_text], [Data_Input_Table].[Day_Current]) And [Data_Input_Table].[Day_Current] <= Nz([Forms]![Search_Form]![End_Date_Lookup_text], [Data_Input_Table].[Day_Current])
    

    【讨论】:

      猜你喜欢
      • 2016-08-28
      • 1970-01-01
      • 2015-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多