【发布时间】:2016-10-01 00:32:24
【问题描述】:
我觉得这应该很明显,我只是在任何地方都找不到答案。
我有一个 Word 文档,其中包含多个在各种过程中声明和定义的公共变量。一个过程打开另一个 Word 文档,该文档具有在打开时加载的表单。在我的一生中,我无法在第二个文档中使用该表单来使用原始文档变量中的值。我是否误解了公共变量的性质?我发现的一切似乎都表明这些值应该对新打开的文档可见。
所以要打开第二个文档,我使用下面的代码(其中一些是在其他地方声明和设置的,但我认为这是相关的东西:
Public iMarker as boolean
Sub OpenDoc()
If check_ExA.Value = True Then 'a checkbox on a userform
docName = docsPath & "/" & "seconddocumentpath.docm"
iMarker = True
formAddDocs.Hide
Set addDoc = Documents.Open(docName)
End Sub
从那里,新文档有一个显示在 Open 上的表单,在初始化时,我希望它能够查看 iMarker 变量是否为真,以及其他一些字符串等。
Private Sub UserForm_Initialize()
If iMarker = True Then
'do some other stuff
End If
End Sub
我尝试将 Initialize sub 更改为 public,但什么也没做。当第二个文档打开时,它不会看到 iMarker 是真的。有什么建议吗?
【问题讨论】:
-
你能展示你用来打开新文档并读取变量的代码吗?使问题更容易排除故障...
-
谢谢,约翰。在帖子中添加了一些代码。
-
打开新文件后是否关闭上一个文件?
-
不,原文档一直打开。