vba를 사용하여 워크 시트를 pdf 파일로 저장하려고합니다. 워크 시트는 A4 페이지보다 넓으며 몇 가지 모양 (좌우)이 있습니다. 워크 시트를 하나의 A4 페이지에 넣기를 원하기 때문에 화면에 표시된 것처럼 다시 조정해야합니다. 다음 코드를 사용하고 있습니다 :그래프가있는 워크 시트를 PDF로 저장
Sub Print_PDF()
Dim sFilename As String
Worksheets.Add.Name = "Helpsheet"
sFilename = "G:\anything\test.pdf"
ThisWorkbook.Worksheets("Newsletter").Range("A2:D81").CopyPicture xlScreen, xlBitmap
ThisWorkbook.Sheets("Helpsheet").Activate
ThisWorkbook.Sheets("Helpsheet").Paste
ActiveSheet.PageSetup.PrintArea = ThisWorkbook.Sheets("Helpsheet").Range("A1:O86")
With ActiveSheet.PageSetup
.Orientation = xlPortrait
.FitToPagesWide = 1
.FitToPagesTall = 1
End With
ThisWorkbook.Sheets("Helpsheet").ExportAsFixedFormat Type:=xlTypePDF, Filename:=sFilename, quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
Application.DisplayAlerts = False
ThisWorkbook.Sheets("Helpsheet").Delete
Application.DisplayAlerts = True
End Sub
코드는 실제로 PDF 파일을 예상되는 위치에 저장합니다. 그러나 PDF 파일은 예상 한 페이지 대신 4 페이지입니다. 그래서 그것은 printarea가 정확하게 정의되지 않은 것 같습니다. 내가 도대체 뭘 잘못하고있는 겁니까?
확대/축소를 false로 설정하면 트릭이 발생했습니다. 내 하루를 저장해 주셔서 감사합니다! – Roosz0rd