【问题标题】:combo box reference not working in access query criteria组合框参考在访问查询条件中不起作用
【发布时间】:2016-08-25 14:31:16
【问题描述】:

我建立了一个数据库,在完成所有查询后,它会输出一个表单,我可以过滤记录,并且在过滤时相关信息会发生变化。要到达那里,我必须能够在我的查询中引用位于我的输入表单(其中包含所有销售人员的 ID 号)上的组合框。但是,当我在条件部分 '[Forms]![Entry Form]![ID]' 中输入普通表单引用并运行查询时,它什么也不返回。我认为这是因为在我们的许多实时数据表中,ID 号之前或之后都有空格,而组合框中列出的 ID 号中没有空格。我尝试在查询表中的 ID 号字段时使用 trim 函数,但它仍然没有返回任何内容。

还有什么我可以尝试的建议吗?如果需要更多信息,请随时询问。

【问题讨论】:

  • Like 可能对你有用,虽然它会慢一些:LIKE *ID* in the criteria.
  • 我把它修改为:Like [Forms]![Entry Form]![ID],但不幸的是它没有做任何事情
  • 我也试过:像 [Forms]![Entry Form]![ID] (这应该有星号,但它们消失了),但它没有也不做任何事情
  • 请发布一些示例数据。您确定空格是空格而不是看起来像空格的字符吗?
  • 我把它改成了 Like "" & [Forms]![Entry Form]![ID] & ""但它们消失了)并且它起作用了..有点。它返回数据,但似乎并不完全正确。据我所知,它返回了一些随机数据——但仍然是数据。知道我应该在这里做出什么改变吗?

标签: ms-access


【解决方案1】:

将绑定列更改为 2,或者它在行列中的任何列,都在组合框的属性表数据选项卡下。选择时它可能会返回 ID 而不是文本。

【讨论】:

    【解决方案2】:

    在这种情况下,查询设计器不是最佳选择。相反,在 SQL 模式下打开它(左上角应该有一个下拉菜单,允许您更改查看查询的方式)并将 WHERE 子句更改为:

    Trim(ID) = [Forms]![Entry Form]![ID]  
    

    这不会很有效,这就是为什么你永远不应该使用绑定表单,因为你可以对数据输入进行修剪并节省开销,但这至少应该为你返回数据。

    【讨论】:

    • 我试过了,很遗憾,它没有用。我感谢您的帮助
    【解决方案3】:

    我想通了!!我的问题的答案是我需要手动输入组合框选项,而不是从另一个表中导入选项。出于某种原因,它起作用了。再次感谢各位的帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-10-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多