我有一个Microsoft Access弹出表单,用于查找地址。一旦用户找到了邮政编码,则将地址放入启动它的表单上的各个文本框中。问题在于,该弹出表单是从整个数据库的各种表单启动的,因此将结果放入其中的文本框位于不同的位置。

我尝试通过以下方式解决此问题。我有一个总在打开的总机,所以我在那里有一个隐藏的文本框,我以编程方式放置了要从中启动弹出表单的表单的名称。然后,我声明一个字符串变量,将其设置为该隐藏文本框的当前值,如下所示:

Dim currentForm As String
currentForm = [Forms]![foo]![bar]


然后,我尝试将我的地址详细信息放入相关的文本框中,如下所示:

Forms!currentForm![txtCurrentAdd1] = rst![Line1]


但是,这没有按计划进行,我在做什么错呢?

谢谢

最佳答案

要么:

Dim currentForm As String
''Not sure where the two parts are coming from
''but you cannot have them like that
currentForm = "foobar"

Forms(currentForm).[txtCurrentAdd1] = rst![Line1]


要么

Dim currentForm As Form
Set currentForm = Forms![foobar]

currentForm![txtCurrentAdd1] = rst![Line1]


您可能想读一读爆炸与点。

请注意,整个过程看起来有点像您在上游游泳。

09-16 13:04