3

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

如果我有多个嵌套的子表单(比如向下 3 或 4 层),我可以以某种方式将位于 4 层的子表单与位于 1 层的父表单的记录相关联吗?我所说的嵌套子表单的意思是将一个表单粘贴到一个表单中,粘贴到另一个表单中,等等。

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

有没有简单的方法来解决这个问题?或者也许使用VBA?

4

2 回答 2

5

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

  LinkMaster  CustomerID
  LinkChild   CustomerID

然后 subForm2 可以有这个:

  LinkMaster  subForm1.Form!InvoiceID
  LinkChild   InvoiceID

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

您还可以考虑使用子数据表是否可以使用级联数据表表单来解决问题。您甚至可以让数据表将非数据表表单显示为其子数据表(当我将具有子表单的父表单切换到数据表视图时,我完全意外地发现了这一点——子表单仍显示在表单视图中)。使用子数据表,您不会遇到表单数量或嵌入连续表单的限制的任何问题。

于 2011-01-20T23:39:37.467 回答
0

如果这纯粹是出于审美原因(它对您或其他人来说看起来很漂亮),而不是出于功能原因,为什么不直接使用带有“下沉”特殊效果的矩形?

于 2011-01-20T19:49:50.423 回答