选项卡控件页面上的重新查询表单记录源 - 按控制类型?

时间:2017-08-16 13:34:05

标签: controls ms-access-2010 tabcontrol subform

我有一个带有多个页面的标签控件,每个页面都有1或2个子表单。其中一个页面/子表单影响大多数其他页面及其相应子表单的可见性。如果有人在这个子表单中添加了记录,我会将该记录的相应选项卡控件页面设置为可见。

我还需要重新查询该页面上的子表单。我的挑战是,我不知道如何在代码中间识别,而不必明确硬编码if或case语句来遍历每个页面,并在该页面上拼出子表单。

有没有办法,如果我已经在记录集循环中识别出子表单页面,检查该页面上的表单控件,并找到每个表单控件,重新查询它的记录源?

谢谢。

1 个答案:

答案 0 :(得分:0)

解决。

For Each ctl In Forms!frmformname.tbTabName.Pages(recordsetname.Fields("pagecontrolfieldname")).Controls
                With ctl
                    Select Case .ControlType
                    Case acSubform
                        ctl.Form.Requery
                    End Select
                End With
            Next ctl

现在我只需要弄清楚如何限制控件type上的subform组合框,以便它不会显示主records中已存在的值, sub record表。

我将单独发布。