Vba 从主窗体驱动子窗体中的MS Access查询

Vba 从主窗体驱动子窗体中的MS Access查询,vba,combobox,ms-access-2010,subforms,Vba,Combobox,Ms Access 2010,Subforms,我有一个数据表形式的子表单 我希望根据主窗体上的组合框筛选此子窗体。 子窗体的数据来自查询。我已将此查询的一个字段的条件设置为等于: [Forms]![Form_Data_Update]![cbo_ReportSelection] 主窗体是Form_Data_Update,组合框是cbo_ReportSelection 在我更改已放入的组合框时刷新子窗体 Private Sub cbo_ReportSelection_AfterUpdate() DoCmd.OpenQu

我有一个数据表形式的子表单

我希望根据主窗体上的组合框筛选此子窗体。 子窗体的数据来自查询。我已将此查询的一个字段的条件设置为等于:

    [Forms]![Form_Data_Update]![cbo_ReportSelection]
主窗体是Form_Data_Update,组合框是cbo_ReportSelection

在我更改已放入的组合框时刷新子窗体

    Private Sub cbo_ReportSelection_AfterUpdate()
    DoCmd.OpenQuery ("Aggregate_Leanboard_Discipline_Grouping")
    End Sub
是否有其他方法不会导致查询在新选项卡中打开?我希望它只是在子窗体中刷新。我试过:

    Me!Form_Leanboard_Discipline_Grouping_Subform.Requery
但这不起作用,我收到一个错误“2465”,Microsoft找不到字段“Form_Leanboard_Practice_Grouping_Subform”

我正在使用Access 2010


谢谢

子表单包含在子表单控件中。使用子窗体控件的名称,而不是窗体的名称。他们可能有不同的名字

Private Sub cbo_ReportSelection_AfterUpdate()
    Me!SubformControlName.Form.Requery
End Sub

我跟踪了你们,发现了一些错误,对我有用的编码是

Private Sub cbo_ReportSelection_AfterUpdate()

    Me.What ever Your SubForm Name.Requery

 End Sub
这可能与上面的内容相同,如果是删除的话,但是当我读到上面的评论时,似乎你必须在其中的某个地方放置“SubFormControl”

对于不知道如何查找子窗体名称的窗体,请转到“设计”视图,左键单击子窗体,然后在功能区中的“属性”中,窗体名称将显示在屏幕右侧的“属性”选项卡中

还要注意,如果您的子窗体名称中有空格,则必须将“u”放在空格所在的位置


祝大家好运,我认为自己是新手。所以我试着尽我所能的为另一个在我们十年后读到这篇文章的人解释。。。我需要这个代码来完成我的access数据库中的搜索栏。我正在为这个类创建一个系谱数据库,第一个实现今天就要到了,这段代码把我的屁股从接收和B保存到了可能和a。。谢谢

在哪里可以找到子窗体控件名称?在“设计”视图中打开主窗体。打开属性页。在子窗体周围单击,直到属性页显示“选择类型:子窗体/子报表”。。。然后子窗体控件的名称将显示在下面的下拉框中。