我有一个数据表形式的子窗体。
我想根据主窗体上的组合框来过滤这个子窗体。子窗体的数据来自一个查询。我已经将此查询的一个字段的条件设置为等于:
[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_Discharipine_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"放在那里的某个地方。
对于那些不知道如何找到子窗体名称的窗体,您可以转到设计视图,左键单击子窗体,然后在功能区中的属性,窗体的名称将显示在屏幕右侧的属性选项卡中。
还要注意,如果子窗体名称中有空格,则必须将"_"放在空格所在的位置。
祝你们好运,我认为自己是个菜鸟。。所以我试着尽可能多地为其他在我们十年后读到这篇文章的人解释……我需要这段代码来完成我的访问数据库中的搜索栏。我正在为类制作一个家谱数据库,第一个实现今天就要完成了,这段代码把我的屁股从接收和B保存到了可能和a。谢谢