【问题标题】:How do I set up a criteria using the second column of a combo box in MS Access?如何使用 MS Access 中组合框的第二列设置条件?
【发布时间】:2015-01-15 09:06:28
【问题描述】:

我有一个选择角度的组合框。 我想以此角度为界限。

组合框使用此表:

组合框显示列 (1) (BaseCoordinates)

我需要在这样的查询中创建一个条件:

但它当然会选择 ID,因为它是第一列。 我之前已经通过在表格上没有 ID 来解决此问题,但我不喜欢这样,因为如果我只有包含值的列,它可能会以我不希望的方式对数字进行排序。

我尝试过forms!f_main!WindSectorCombo.Column(1),但它无法识别变量。

在 VBA 中,它可以很容易地找到变量 - 问题出在查询中。

有什么建议吗?

【问题讨论】:

  • 您是否尝试将 Bound 列从 1 更改为 2?
  • 是的,它甚至不识别命令,尽管使用了 0、1 或 2。
  • 没有。我的意思是,在 ComboBox 的设计视图中,将 Bound Column 的属性从 1 更改为 2。因此您不必在 Query 中使用 Column 方法。可能只是Forms!FormName!ComboBoxName
  • 哦,是的,我现在明白你的意思了。我没有尝试更改绑定列,但它可以解决问题是有道理的。我会尽快尝试。我现在没有任何表格,因为我必须通过只有 1 列继续进行快速修复。但我会让你知道它是否有效。非常感谢你们!

标签: sql ms-access combobox criteria


【解决方案1】:

正如 PaulFrancis 所建议的,您需要确保绑定的列是您的 BaseCoordinates 列。

转到 WindSectorCombo 的属性表,在数据选项卡下,如果在数据源查询的设计视图中,BaseCoordinates 列在第 2 个位置,则输入 2

在WindSectorCombo属性表的格式选项卡中,确保列数为2,第二列的宽度大于零(以便能够看到组合框中的值)

现在从窗体上的 WindSectorCombo 中选择一个值并再次运行您的查询,它将起作用。您的查询 SQL 应如下所示:

SELECT myTable.ID, myTable.BaseCoordinates
FROM myTable
WHERE ((myTable.BaseCoordinates)>(90-([Forms]![f_Main]![WindSectorCombo])));

【讨论】:

  • 我会尽快尝试的,谢谢! (见上面对保罗和你的回复)
猜你喜欢
  • 2012-01-07
  • 1970-01-01
  • 1970-01-01
  • 2019-07-05
  • 1970-01-01
  • 1970-01-01
  • 2018-07-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多