VBA:在Excel中,如何将Word文档保存为PDF?

我有一些代码,复制和粘贴Excel文件中的数据到Word文档,我怎样才能得到这个Word文档保存为PDF格式?

我的代码如下:

Sub RetailerGraphs() Dim Location As String Dim Detail As String Worksheets("-Summary").Activate Range("AE9").Select While ActiveCell.Value <> "" ActiveCell.Offset(1, 0).Select Location = ActiveCell.Value Worksheets("Detail Summary").Activate Range("B7").Value = Location Dim objWord, objDoc As Object ActiveWindow.View = xlNormalView Set objWord = CreateObject("Word.Application") Set objDoc = objWord.Documents.Add Range("AH40").Select While ActiveCell <> "" ActiveCell.Offset(1, 0).Select Detail = ActiveCell.Value Range("B11").Value = Detail Application.Wait (Now + TimeValue("0:00:05")) Range("A1:Z111").CopyPicture Appearance:=xlScreen, Format:=xlPicture objWord.Visible = True objWord.Selection.Paste objWord.Selection.TypeParagraph Set objSelection = objWord.Selection objSelection.InsertBreak (wdPageBreak) If ActiveCell.Value = "END" Then objWord.SaveAs2 "C:\Docs\MyDoc.pdf" End If Wend Worksheets("-Summary").Activate Wend End Sub 

内线:

 If ActiveCell.Value = "END" Then End If 

我已经尝试了下面的代码来试图把它保存为PDF:

  objWord.ExportAsFixedFormat OutputFileName:="C:\wordtest.pdf", _ ExportFormat:=wdExportFormatPDF objWord.ExportAsFixedFormat OutputFileName:="C:\Documents and Settings\All Users\Desktop\YourFile.pdf", ExportFormat:=wdExportFormatPDF objDoc.ExportAsFixedFormat OutputFileName:="C:\Documents and Settings\All Users\Desktop\YourFile.pdf", ExportFormat:=wdExportFormatPDF 

但我得到的错误,我试图将其导出为PDF格式,例如objWord.SaveAs2 "C:\Docs\MyDoc.pdf"

 Run-time error '438': Object doesn't support this property or method 

有人可以帮忙吗?

注意:我确保在参考文献中勾选了“Microsoft Word 14.0 Object Library”,并且将位置更改为必要的目录,而不是使用上述内容。

ExportAsFixedFormat是Word.Document(objDoc)的一种方法,而不是Word.Application(objWord)。 所以

 objDoc.ExportAsFixedFormat OutputFileName:="C:\Docs\File.pdf", ExportFormat:=wdExportFormatPDF 

应该pipe用。

这是否也给错误? 哪一个?