1

很简单的解释。我有一个包含 10 个条目的表,5 个条目包含 2010 年,5 个条目包含 2011 年的列。

在我的查询中,我使用 Like *2010 过滤掉所有等于 2010 的条目并仅显示这些记录。

在我的表格上,我的组合框填充了每个独特的年份(来自不同的表)。所以我的组合框值是 2010 和 2011。

是否有可能,当我选择说 2011 时,我修剪正确的 4 个字符并用作我的 Like 条件来刷新和重新查询表单,所有这些都在 VBA 中完成?

4

2 回答 2

2

只要包含该控件的表单处于打开状态,您就可以在 Access 会话中运行的查询中引用该控件的值。

SELECT *
FROM YourTable
WHERE date_field_as_text Like "*" & Forms!YourForm!YourCombo;

因此,也许您可​​以使用类似的查询作为表单的记录源,并Me.Requery在组合框的更新后事件中执行。

如果这还不够接近您想要的,请向我们提供有关所涉及字段的数据类型的更多信息。在您的问题中添加表格数据的简短示例也会有所帮助;请明确“日期”字段是文本还是日期/时间。

于 2012-12-27T19:03:40.320 回答
0

是的,有可能。只需将您的内容添加到“YourComboName.After_Update”即可。查找在显示表单之前触发的表单事件。像 HansUp 建议的那样构建您的查询。

于 2012-12-27T19:07:57.853 回答