在Excel中从多个工作表创建预定义区域的PDF

时间:2017-06-27 20:16:29

标签: vba excel-vba pdf excel

我是这个世界上真正的新秀,但我希望你能忍受我...... :)

我正在处理工作簿,最终结果是创建PDF概述。这应该包含工作簿中3页区域的信息。

我从不同的主题构建了下面插入的代码。每当我尝试运行它时,它会给我一个错误,说明"下标超出范围"。

非常感谢任何反馈! :=)

Sub CreatePDF()

    Sheets("Sheet(1)").Select
    Range("B1:K27").Select
    Sheets("Sheet(7)").Select
    Range("A4:J37").Select
    Sheets("Sheet(3)").Select
    Range("A1:J24").Select

        ThisWorkbook.Sheets(Array("Sheet(1)", "Sheet(7)", "Sheet(3)")).Select
        Selection.ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:="C:\temp\temp.pdf", _
            Quality:=xlQualityStandard, _
            IncludeDocProperties:=True, _
            IgnorePrintAreas:=False, _
            OpenAfterPublish:=True

    Sheets("Sheet(1)").Select
    Range("A1").Select

End Sub

1 个答案:

答案 0 :(得分:0)

Array("Sheet(1)", "Sheet(7)", "Sheet(3)")

这应该是

Array(1, 7, 3) ' numeric indexes of sheets according to their tab positions

Array("Sheet1", "Sheet7", "Sheet3") ' exact names of sheets

根据您的意图,Sheets("Sheet(1)")也应该是Sheets("Sheet1")Sheets(1)