【发布时间】:2016-06-20 21:32:57
【问题描述】:
我在使用 MS Access 2010 时遇到问题,这让我抓狂。 我确实有一个带有一些子表单的表单。子窗体不链接到主窗体,但它们的记录源查询主窗体上的某些字段。 到现在为止还挺好。如果我更改主窗体上的字段值,子窗体将显示正确的记录。
但是,当我使用一些 VBA 代码重置主窗体上的值时,问题就开始了。
假设我的一个子表单具有以下源对象:
Me.[Subformulier].SourceObject = "Form A"
当我重置主窗体时,我使用以下代码:
Me.[Subformulier].SourceObject = ""
..
execute some code
..
Me.[Subformulier].SourceObject = "Form A"
但是我的子表单没有返回任何记录。 有趣的是,当我打开子表单时,它准确地显示了我正在寻找的记录......
谁能帮我解决这个问题?
【问题讨论】:
-
你试过子表单上的
Requery或Refresh方法吗? -
是的,两个都试过了。我什至尝试重新计算、刷新和重新查询主窗体,包括子窗体
-
你为什么要这样做:
Me.[Subformulier].SourceObject =Me.[Subformulier].SourceObject = ""` -
我不是。实际上我正在做的是首先将子表单的源对象设置为无(“”),所以删除子表单源并关闭它,然后执行一些代码,这些代码只有在子表单无论如何都没有打开的情况下才能执行,然后设置子表单的源对象返回到“Form A”
标签: ms-access vba ms-access-2010