繁体   English   中英

使用VBA筛选MS Access子表单

[英]Filtering MS Access subform with vba

我有一个快速的问题。 我已经开发了一个预订系统,该系统具有一个子窗体,该子窗体包含在显示日期(主窗体)上所有已预订的房间。 我添加了一个组合框,以允许用户筛选房间以仅查看他们从组合框中选择的房间(重新查询子窗体,然后进行筛选)。

除了我的代码有时在到达子末尾后,没有明显的原因有时会循环通过过滤子的情况之外,这种方法还不错。 它可以正确显示所有内容,所以我对此并不感到困扰(除非它与实际问题有关)。

但是,真正的问题是,当我选择的房间没有显示日期的预订时。 筛选器工作正常(空显示),但是当我尝试从组合框选择另一个房间时,组合框更新后的重新查询功能不起作用!

之前有没有其他人经历过?

工作流程:

组合框触发“更新后”事件。 这将重新查询子表单,在“当前”事件之后,将对子表单进行过滤。

当子表单为空时,我将无法再执行任何子表单重新查询。

我做了类似的事情,对此很费劲,但是能够通过我的combo_box_afterupdate事件中的以下代码修复它。

Dim rs As Object
Me.Form.Filter = ""
Me.Form.Refresh
Set rs = Me.Recordset.Clone
rs.FindFirst "[ValueToFind] = '" & Me![MyComboBoxValue] & "'"
If Not rs.EOF Then Me.Bookmark = rs.Bookmark

还要确保链接父母和孩子为最后提到的人。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM