【问题标题】:MS Word 2000 global template not retainning VBA valuesMS Word 2000 全局模板不保留 VBA 值
【发布时间】:2011-01-14 23:28:47
【问题描述】:

我正在尝试找出导致全局模板 (normal.dot) 丢失其存储值的第二台部署计算机上的问题。

此代码适用于我拥有的干净的 VM 机器。两台机器都是只有 Word 2000 的 Windows XP。它在 VM 上按预期工作。在另一台机器上,我相信还安装和使用了其他模板,每个模板都引用了 Normal.dot。

每次打开第二个文档时执行下面的代码,它仍然是 MsgBox 的“假”,因为它不保留开始的值。

什么可能导致 Normal.dot 重新启动/丢失其存储的值?我想可能是因为它也使用了其他模板,但我不明白它们是如何相关的。

Dim started As Boolean

Private Sub Document_Open()
    MsgBox started
    If Not started Then
        started = True
    End If
End Sub

【问题讨论】:

    标签: vba ms-word


    【解决方案1】:

    嗯,出于某种原因,我不能评论来问这个问题......其他模板是否有代码正在运行?你确定那个用户的机器上只有一个 normal.dot 吗?

    我将从对硬盘驱动器进行彻底的模板搜索开始,然后通过将文件扩展名更改为非单词来逐一“禁用”所有找到的模板。如果你没有其他模板并且它仍然没有触发,那么你知道他们不负责。 (无论如何都不应该,因为模板仅由文档或用户加载。)

    【讨论】:

    • 他们现有的软件中有许多其他模板,所以我认为这也是问题所在。我将我的 .NET 类重新设计为单例,因此我不需要担心多个实例被初始化。感谢您的帮助。
    猜你喜欢
    • 2017-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多