如何使用VB将word文档链接到自定义模板?

时间:2013-11-11 16:34:51

标签: vb.net templates macros document

我正在尝试编写一个VB脚本,在指定的路径中逐个打开word文档,将这些文档链接到我创建的.dot模板,然后执行两个宏(“ViewPrintLayout”和“ProcedureFormatBulletPoints”)位于该模板内。

我设法让脚本打开文档并尝试执行宏。但它失败了,因为我无法将其成功链接到模板。我的代码副本如下;

Dim objWord, objFSO, objFile, objFolder
Dim strList

strPath = InputBox("Enter Path Name") 

If strPath = "" Then WScript.Quit

Set objFSO = CreateObject("Scripting.FileSystemObject")
set objFolder = objFSO.GetFolder(strPath)

Set objWord = WScript.CreateObject("Word.Application")
objWord.Visible = True




For Each objFile In ObjFolder.Files

    If LCase(Right(objFile.Path, 4))  = ".doc" Then
        objWord.Documents.Open objFile.Path
        objWord.AddIns.Add FileName:="\My Documents\MEGA\PDF Templates\MyTemplate.dot"
        objWord.Run "ViewPrintLayout"
        objWord.Run "ProcedureFormatBullets2"
        ObjWord.Documents.Close
    End If
Next

objWord.Quit

任何人都可以帮忙解释为什么这不起作用?我收到运行时错误。亲切的问候。

1 个答案:

答案 0 :(得分:0)

也许你可以在这里找到一些有用的代码:

http://support.microsoft.com/default.aspx?scid=kb;EN-US;830561#3

此MS页面中的代码主要是将doc文件的.dot模板分离/重置为标准/默认.dot /模板,但也许您可以使用类似的代码来附加/链接新的.dot模板到现有的doc文件。

截至今天,我正在尝试重用这个旧代码来重置几百个旧.doc文件中的.dot文件...(.doc文件中引用的.dot文件不再存在,每次打开这些.doc文件时都会造成很多延迟)