繁体   English   中英

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

[英]VBA: Within Excel how do I save a word document as a 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对象库”,并且将位置更改为必要的目录,而不是使用上面的目录。

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

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

应该管用。

这也会产生错误吗? 哪一个?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM