Jak drukować do pliku pdf za pomocą vba (z przykładem)
Aby wydrukować aktualnie aktywny arkusz Excela do pliku PDF, możesz użyć następującej składni w VBA:
SubPrintToPDF ()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=" my_data.pdf ", _
Quality:=xlQualityStandard, _
IncludeDocProperties:= False ,_
IgnorePrintAreas:= False ,_
OpenAfterPublish:= True
End Sub
To konkretne makro wydrukuje aktualnie aktywny arkusz Excela do pliku PDF o nazwie my_data.pdf i zostanie on zapisany w bieżącym folderze.
Uwaga nr 1 : Możesz także podać pełną ścieżkę pliku w argumencie Nazwa pliku , aby zapisać plik PDF w określonym folderze.
Uwaga nr 2 : Linia OpenAfterPublish:= True informuje VBA, aby otworzył plik PDF zaraz po jego wyeksportowaniu. Możesz pominąć ten argument, jeśli nie chcesz, aby plik PDF był otwierany po eksporcie.
Uwaga nr 3 : Jedynym wymaganym argumentem w metodzie ExportAsFixedFormat jest Type , który musi być ustawiony na xlTypePDF , aby wydrukować arkusz w formacie PDF.
Poniższy przykład pokazuje, jak w praktyce wykorzystać to makro.
Przykład: Eksportuj arkusz Excela do formatu PDF za pomocą VBA
Załóżmy, że mamy następujący arkusz Excela zawierający informacje o różnych koszykarzach:
Załóżmy teraz, że chcemy wyeksportować ten arkusz do pliku PDF o nazwie my_data.pdf .
W tym celu możemy utworzyć następujące makro:
SubPrintToPDF ()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=" my_data.pdf ", _
Quality:=xlQualityStandard, _
IncludeDocProperties:= False ,_
IgnorePrintAreas:= False ,_
OpenAfterPublish:= True
End Sub
Kiedy uruchomimy to makro, arkusz Excela zostanie wyeksportowany do pliku PDF, a następnie plik PDF zostanie automatycznie otwarty:
Należy pamiętać, że plik PDF zawiera dokładne formatowanie komórek wraz z obramowaniem i kolorem wypełnienia.
Uwaga : Pełną dokumentację metody ExportAsFixedFormat w VBA znajdziesz tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:
VBA: jak tworzyć foldery
VBA: jak usunąć foldery
VBA: jak usunąć pliki