设置第一个过滤器后,访问过滤器不会显示可供选择的值列表

时间:2012-06-04 12:06:04

标签: ms-access ms-access-2007

我在Access 2007中使用表单过滤器时遇到了一些麻烦。我在一些表单中使用listview,用户需要能够在那里进行过滤。

出于测试目的,我做了一个查询,它只基于一个表。如果我想设置第一个过滤器,它看起来像:

Normal filter

我选择一个值,如果我想设置另一个过滤器(显然在另一个字段上),则没有可供选择的值。

2nd filter

这似乎只有在我使用查询时才会发生(如果我使用每个字段无关紧要,或者根据一个表或多个链接表使用几个字段)。我当然可以使用数字过滤器并手动输入值。

我有另一个数据库,我可以随时随地使用过滤器,无论是查询还是表格 - 我有一个列表,每次都可以选择值。这意味着我搞砸了某些东西,但我完全不知道在哪里。

我正在使用Access 2007(FE / BE),如果您需要任何进一步的细节,请询问。任何从哪里开始寻找的建议都非常感谢!

3 个答案:

答案 0 :(得分:0)

好吧,经过一段时间的游戏,我发现了问题所在。

表单记录源需要是一个查询 - 没有sql代码,没有“select * from query”,只是查询的名称。任何其他事情都会导致您使用过滤器的限制。我不确定这是不是一个错误,或者是否有这样的原因,但这就是它在2007年访问中的作用方式 - 至少对我而言。

在我为查询动态添加条件之前,这导致了像“select * from qDeliveries where location = 1”这样的记录源。为了实现这一点,我现在只创建一个临时查询,它是表单记录源而不是仅仅使用sql代码。

希望这有助于任何人...... :)

答案 1 :(得分:0)

代替使用查询,请尝试以下操作:

  1. 文件 >> 选项
  2. 当前数据库
  3. 向下滚动到过滤器查找选项
  4. 检查 ODBC字段

关闭并重新打开文件。那应该可以解决问题。

答案 2 :(得分:0)

创建一个单独的查询并分配给该表单。而不是在表单中创建查询。您的问题可能会得到解决。我做了同样的工作,对我来说很好。