【发布时间】:2014-03-05 02:14:45
【问题描述】:
我正在尝试在 Excel 中创建一个由 TitleSheet 和 ReportSheet 组成的 PDF 报告。当我选择我需要的两张表并使用 ExportAsFixedFormat 生成 PDF 时,我似乎无法控制将这些表添加到文档中的顺序。截至目前,TitleSheet 最终位于 ReportSheet 的底部......不是很有帮助。
这是我的相关代码和一些我尝试但不起作用的 cmet。
Dim FilePath As String
FilePath = Application.GetSaveAsFilename(ReportSheet.Name & ".PDF", "PDF(*.pdf),*.pdf*", 1, "Save As PDF File")
If FilePath = "False" Then Exit Sub
TitleSheet.Select 'so it's the first in the DPF report, no worky
Dim PrintSheets(1) As Variant
PrintSheets(0) = TitleSheet.Name 'changed index order, no worky
PrintSheets(1) = ReportSheet.Name
Sheets(PrintSheets).Select 'select both sheets so they both print
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
FilePath, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True
ReportSheet.Activate 'select this sheet so it's visible at the end
我寻找了其他一些答案 (Exporting multiple pages to PDF in a specific order),但还没有雪茄。我在 TitlePage 和 ReportPage 之间有不同的列宽,所以我不想经历合并它们的麻烦。我也不能使用第 3 方 PDF 创建器,因为大多数用户在他们的机器上没有安装任何其他软件的管理员权限。
【问题讨论】:
标签: vba pdf pdf-generation