在两个日期之间查询,或者如果字段为空则显示所有内容

问题描述

我正在使用Access2016。我有一个表,该表的列包括姓氏,位置和到期日期。我创建了一个表格,可以很好地搜索所有这些内容。有一个组合框,用于显示位置,用于名称的文本字段,用于开始日期的文本字段和用于结束日期的文本字段。

您可以通过将位置组合框保留为空白来获取所有位置。您可以通过将名称字段保留为空白来获取所有名称。在我的查询中,我正在使用

Like [Forms]![SearchForm]![LocationCombo] & "*"

Like [Forms]![SearchForm]![NameSearch] & "*"

允许将这些表单字段留空。这很好。如果选择一个位置并将名称保留为空白,则将获得该位置的所有名称。如果仅填写名称,您将得到与所有位置的全名或部分名匹配的人。将它们都留为空白,您就会得到所有人。完美

我的问题出现在日期字段。我可以使用

正确获取将在两个日期之间到期的行

>=[Forms]![SearchForm]![StartDate] And <=[Forms]![SearchForm]![EndDate]

但这需要填写两个日期字段。我可以使用距离很远的日期(例如,1/1/1900和12/31/2099)并获得所有结果。我想要的是一种将这些日期字段留为空白并仍然获得结果的方法。我很难做到这一点。

据我所知,我无法同时使用LIKE>=<=运算符来进行类似于我在名称和位置上所做的操作。我还能在这里尝试什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)