1

平台: Windows 和 Microsoft Visual Basic 2010 Express

问题:我有一个在 Word 2007 中制作的 Word 模板。当应用程序在装有 Word 2010 的机器上运行时,SaveAs 命令不起作用。打开模板并向模板中的书签添加数据甚至照片都可以正常工作。

这是不起作用的语句(vPath包含路径和文件名。):

oDoc.SaveAs(vPath.ToString)

我尝试了不同的解决方案,但没有任何效果:

oDoc.SaveAs(vPath.ToString, WdSaveFormat.wdFormatDocument)
oDoc.SaveAs(vPath.ToString, 17)  ' WdSaveFormat.wdFormatPDF
oDoc.SaveAs(vPath.ToString, 6)   ' WdSaveFormat.wdFormatRTF

参考:

  • Microsoft Office 12.0 对象库
  • Microsoft Word 12.0 对象库

导入语句:

Imports Microsoft.Office.Interop
Imports Microsoft.Office.Interop.Word
4

1 回答 1

2

我正在使用 Office 14 并下载了 2007 模板。以下代码适用于我。

Imports Microsoft.Office.Interop
....
Dim objApp As Word.Application
Dim objDoc As Word.Document
objApp = New Word.Application()
objDoc = objApp.Documents.Open("c:\delme\templateoriginal.dotx")
objDoc.Activate()
objApp.Selection.TypeText("some text")
objDoc.SaveAs("c:\delme\template.dotx")
objDoc.Close()
objApp.Quit()
objDoc = Nothing
objApp = Nothing

您是否检查过您的 vPath 是否正确?我不确定 vPath 是什么,但 ToString 是一种正确的方法,所以你是否偶然错过了括号?

vPath.ToString -> vPath.ToSring()
于 2013-05-18T19:32:32.997 回答