从资源管理器打开模板文件,dotm时自动显示表单

时间:2014-06-30 11:16:54

标签: vba ms-word word-vba word-2013

我已经编写了一个基于表单的文档生成宏(在VBA中),以便分发给销售团队。

为了便于使用,我想提供一个自包含的文件,它会在文档打开后立即显示表单。

使用AutoOpen如果word已经打开并且在其中打开了dotm文件,我可以按预期显示表单。但是,如果我从资源管理器中双击该文件,没有任何反应,我必须手动启动宏。我以为AutoExec可能允许这个,但没有运气。我花了很多时间试图通过谷歌搜索来实现这一点,但我没有到达任何地方。

即使双击打开文件,如何才能显示表单?是否可以在不必为每个用户更改normal.dotm的情况下执行此操作?

有关更多背景信息,我正在使用Word 2013,测试期间完全启用了宏。 dotm文件存储在受信任的位置。

我正在使用宏来启动这样的表单......

Public Sub AutoOpen()
    StartPage.Show
End Sub

我尝试过使用AutoExec也无济于事。

1 个答案:

答案 0 :(得分:8)

在“generator.dotm”文件中找到Visual Basic并进入“ThisDocument”Microsoft Word对象。

在Visual Basic编辑器的顶部,选择左侧的“文档”,然后单击右侧的“新建”。将出现Private Sub Document_New()方法供您进行编辑。然后你可以在那里调用你的用户表单。类似于:

Private Sub Document_New()

    Dim myForm As UserForm1
    Set myForm = New UserForm1

    myForm.Show

End Sub

保存您的Generator.dotm并通过Windows资源管理器双击它,您应该得到您想要的结果。