Vba kullanarak pdf'ye nasıl yazdırılır (örnekle)
Şu anda etkin olan Excel sayfasını PDF’ye yazdırmak için VBA’da aşağıdaki sözdizimini kullanabilirsiniz:
SubPrintToPDF ()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=" my_data.pdf ", _
Quality:=xlQualityStandard, _
IncludeDocProperties:= False ,_
IgnorePrintAreas:= False ,_
OpenAfterPublish:= True
End Sub
Bu özel makro, şu anda etkin olan Excel sayfasını my_data.pdf adlı bir PDF’ye yazdıracak ve geçerli klasöre kaydedilecektir.
Not #1 : PDF’yi belirli bir klasöre kaydetmek için Dosya Adı bağımsız değişkenine tam dosya yolunu da ekleyebilirsiniz.
Not #2 : OpenAfterPublish:= True satırı, VBA’ya PDF’yi dışa aktarılır aktarılmaz açmasını söyler. PDF’nin dışa aktarıldıktan sonra açılmasını istemiyorsanız bu bağımsız değişkeni atlayabilirsiniz.
Not #3 : ExportAsFixedFormat yönteminde gerekli olan tek argüman Type’tır ve sayfayı PDF formatında yazdırmak için bu argümanın xlTypePDF olarak ayarlanması gerekir.
Aşağıdaki örnekte bu makronun pratikte nasıl kullanılacağı gösterilmektedir.
Örnek: VBA kullanarak bir Excel sayfasını PDF’ye aktarma
Çeşitli basketbolcular hakkında bilgi içeren aşağıdaki Excel sayfasına sahip olduğumuzu varsayalım:
Şimdi bu sayfayı my_data.pdf adlı bir PDF’ye aktarmak istediğimizi varsayalım.
Bunun için aşağıdaki makroyu oluşturabiliriz:
SubPrintToPDF ()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=" my_data.pdf ", _
Quality:=xlQualityStandard, _
IncludeDocProperties:= False ,_
IgnorePrintAreas:= False ,_
OpenAfterPublish:= True
End Sub
Bu makroyu çalıştırdığımızda Excel sayfası PDF’ye aktarılır ve ardından PDF otomatik olarak açılır:
Kenarlıklar ve dolgu rengiyle birlikte tam hücre formatının PDF’ye dahil edildiğini unutmayın.
Not : VBA’da ExportAsFixedFormat yönteminin tam belgelerini burada bulabilirsiniz.
Ek kaynaklar
Aşağıdaki eğitimlerde VBA’da diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
VBA: klasörler nasıl oluşturulur
VBA: klasörler nasıl silinir
VBA: dosyalar nasıl silinir