MS Access嵌套子表单链接到主(父)表单

时间:2011-01-20 05:20:07

标签: ms-access subforms

我正在忙于开发一个MS Access 2007应用程序,该应用程序需要使用具有相当复杂的用户界面的子表单。我知道如何创建父表单并链接到子表单,以便它显示与父表单记录相关的数据,但我的问题是:

如果我有多个嵌套子表单(比如3或4级),我可以以某种方式将位于第4级的子表单与第1级的父表单的记录链接起来吗?嵌套子表单的意思是将表单粘贴到表单中,粘贴到另一个表单中等等。

我希望与父窗体链接的子窗体当前使用查询作为其源对象,使用嵌套子窗体的原因纯粹是为了用户界面的美观。

有一个简单的方法可以解决这个问题吗?或者也许使用VBA?

2 个答案:

答案 0 :(得分:5)

很多人都没有意识到的一点是LinkChild / LinkMaster字段实际上可以是任何有效的表达式。因此,您可以将subForm1的LinkChild / LinkMaster属性设置为:

  LinkMaster  CustomerID
  LinkChild   CustomerID

然后subForm2可以这样:

  LinkMaster  subForm1.Form!InvoiceID
  LinkChild   InvoiceID

......等等。我无法想象会比这更深入,但这是可能的。

您可能还会考虑使用子数据表来构建级联数据表表单。您甚至可以将数据表显示为非数据表形式作为其子数据表(当我将具有子表单的父表单切换到数据表视图时,我完全意外地断开了这一点 - 子表单仍然显示在表单视图中)。使用子数据表时,表单数量或嵌入连续表单的限制不存在任何问题。

答案 1 :(得分:0)

如果这纯粹是出于审美原因(对你或其他人来说看起来很漂亮),而不是功能性原因,为什么不使用一个带有“沉没”特效的矩形呢?