使用VBA打开受密码保护的Word 2007模板

时间:2015-01-22 17:28:48

标签: vba templates ms-access ms-word

我正在自动从MS Access 2007创建MS Word 2007文档。

word文档是模板(.dotx)。 他们受密码保护。

使用VBA,我需要在打开模板时传递密码。但是,使用我当前的方法,我看不到这样做的任何选项。 如果我使用documents.open方法,则有一个密码选项,但是当我以这种方式打开模板时,它会打开实时模板而不是副本。

以下是我目前的代码,任何帮助都将不胜感激。

'Pass in a path and open a word doc
Sub openWordTemplate(sDocumentPath As String, sDocumentName As String)

Dim appWord As Word.Application
Dim appDocument As Word.Document

Set appWord = New Word.Application
appWord.Visible = False

'Commented out as this opens the live doc and not a copy of the template.
'Set appDocument = appWord.Documents.Open(sDocumentPath & sDocumentName, , , , TEMPLATE_PWD)


'Open the template. But where can I pass in the password?
Set appDocument = appWord.Documents.Add(sDocumentPath & sDocumentName)


End Sub

1 个答案:

答案 0 :(得分:0)

Documents.Add?不确定,我认为你需要Documents.Open。​​

appWord.Documents.Open(sDocumentPath & sDocumentName), 
passwordtemplate:="YourPassword", Visible:=True

我知道我在其中一个应用中有这个功能并且有效:

Word.Application.Documents.Open ("C:\ TEMPLATES\CONTRACT VARIATION .dot"),
passwordtemplate:="checkopen", Visible:=True