0

我有一个 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 提供了一个帮助我的无代码解决方案。尽管如此,我想知道如何在所有实例中从主表单中更改孙子的表单属性。

4

1 回答 1

1

您无需调整记录源。

调整孙子窗体控件的主/子链接字段,过滤将自动进行。

于 2017-02-13T12:50:51.887 回答