我有一个 MS Access 2013 表单,其中包含一个子表单(孙子)中的一个子表单,两者都在数据表视图中。
现在我在主窗体上有一些控件,应该能够过滤子窗体和孙窗体中的记录。
过滤子表单完全可以正常工作
Dim strSQL As String
strSQL = ...
Me!child.Form.RecordSource = strSQL
Me!child.Requery
但是如果我想为孙子设置过滤器
Dim strSQL As String
strSQL = ...
Me!child.Form!grandchild.Form.RecordSource = strSQL
Me!child.Form!grandchild.Requery
我收到错误 2455。有了这个问题,我通过扩展子表单的一个或多个行解决了这个错误。
但是我现在想为每个孙行设置 RecordSource ,而我当前的代码仅适用于第一行,与我正在展开/折叠的行无关。
如何更改主表单中每个子表单记录的 RecordSource,最好在过滤之前不手动扩展任何行?
编辑: Gustav 提供了一个帮助我的无代码解决方案。尽管如此,我想知道如何在所有实例中从主表单中更改孙子的表单属性。