我正在忙于开发一个MS Access 2007应用程序,该应用程序需要使用具有相当复杂的用户界面的子表单。我知道如何创建父表单并链接到子表单,以便它显示与父表单记录相关的数据,但我的问题是:
如果我有多个嵌套子表单(比如3或4级),我可以以某种方式将位于第4级的子表单与第1级的父表单的记录链接起来吗?嵌套子表单的意思是将表单粘贴到表单中,粘贴到另一个表单中等等。
我希望与父窗体链接的子窗体当前使用查询作为其源对象,使用嵌套子窗体的原因纯粹是为了用户界面的美观。
有一个简单的方法可以解决这个问题吗?或者也许使用VBA?
答案 0 :(得分:5)
很多人都没有意识到的一点是LinkChild / LinkMaster字段实际上可以是任何有效的表达式。因此,您可以将subForm1的LinkChild / LinkMaster属性设置为:
LinkMaster CustomerID
LinkChild CustomerID
然后subForm2可以这样:
LinkMaster subForm1.Form!InvoiceID
LinkChild InvoiceID
......等等。我无法想象会比这更深入,但这是可能的。
您可能还会考虑使用子数据表来构建级联数据表表单。您甚至可以将数据表显示为非数据表形式作为其子数据表(当我将具有子表单的父表单切换到数据表视图时,我完全意外地断开了这一点 - 子表单仍然显示在表单视图中)。使用子数据表时,表单数量或嵌入连续表单的限制不存在任何问题。
答案 1 :(得分:0)
如果这纯粹是出于审美原因(对你或其他人来说看起来很漂亮),而不是功能性原因,为什么不使用一个带有“沉没”特效的矩形呢?