【发布时间】:2017-01-31 16:15:42
【问题描述】:
我目前正在尝试使用以下代码使用 VBA 将多页 Excel 文件转换为 PDF:
Private Sub CommandButton1_Click()
Dim mySheets As Variant, sh
mySheets = Array("Sheet1", "Sheet2", "Sheet3")
For Each sh In mySheets
Sheets(sh).PageSetup.Orientation = xlLandscape
Next
Sheets(mySheets).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:="S:\GasInc\Services\B&ITS\OpsEng\EngServ\_Station Design\Projects\Station Co-ops\Angela Lian" & ".pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False
End Sub
它可以很好地转换我的文件,但是对于我在工作表 2 上的内容,它将它拆分为 PDF 中的多个页面,因为我猜它不会缩放它以适应页面。我想知道如何修改代码以使其缩放此工作表,使其适合 PDF 的一页。
谢谢!
【问题讨论】:
-
见this answer。您基本上必须检查
.VPageBreaks的第一个成员,计算第一个中断的宽度,然后缩放以适应分页符。
标签: vba excel pdf pdf-generation