Seçili sekmeleri PDF yapma

Katılım
17 Mayıs 2012
Mesajlar
102
Excel Vers. ve Dili
Office 2019, Türkçe
Aşağıdaki kod seçili sekmeleri sekme adı ile pdf olarak kaydediyor ancak şöyle bir sıkıntım var. Örneğin 3 tane sekme seçtiysem 3 sekme için 3 tane pdf dosyası oluşturuyor ancak 3 ünde de 3 sekmeyi birleştirerek pdf yapıyor. Yani özetle 3 tane pdf oluşuyor her biride 3 sayfa oluyor tek farklı olan pdf isimleri. içerik aynı.
Benim istediğim seçtiğim her sekmeyi ayrı pdf olarak keydetsin tek başına. kodda nasıl bir değişiklik yapmam lazım



Kod:
Sub SeciliSekmeleriPdfYap()
Dim Zaman As Double
Zaman = Now
On Error GoTo hata

ChDir Environ("UserProfile") & "\Desktop\"

Dim Ds

Set Ds = CreateObject("Scripting.FileSystemObject")

Ds.CreateFolder Environ("UserProfile") & "\Desktop\PDF"

Bas:

yol = Environ("UserProfile") & "\Desktop\PDF\"
For Each syf In ActiveWindow.SelectedSheets
    syf.ExportAsFixedFormat Type:=xlTypePDF, _
    Filename:=yol & syf.Name & ".pdf", OpenAfterPublish:=False
Next

MsgBox "İşlem Tamamlandı." & vbLf & vbLf & _
       "İşlem Süresi ; " & Format(Now - Zaman, "hh:mm:ss")
     
      Exit Sub

hata:

bilgi = MsgBox("Masaüstünüzde PDF klasörü mevcut. Dosyalar klasör içerisinde oluşturulacak. Aynı dosya varsa üzerine yazılsın mı?", vbYesNo)

If bilgi = vbYes Then

GoTo Bas

End If

End Sub
 
Son düzenleme:
Katılım
17 Mayıs 2012
Mesajlar
102
Excel Vers. ve Dili
Office 2019, Türkçe
ActiveSheet yerine syf yazın yeter.
Zaten kod öyleydi ben biraz kurcaladım, kurcalalnmış haliyle koymuşum. Şimdi yukarıda yazdığım gibi düzettim deniyorum. Kaç sekme seçersem seçeyim o kadar pdf yapıyor ama hepsini birleştirerek yapıyor. Değişen birşey yok.Her birini sekme adıyla kaydediyor ama seçtiğim tüm sekmeleri birleştiriyor
 
Katılım
12 Aralık 2015
Mesajlar
1,207
Excel Vers. ve Dili
Türkçe Ofis 2007
2013 ofisde deniyorum, dediğim düzeltmeyi yapınca, sayfaları ayrı ayrı ve birleştirmeden, pdf ye dönüştürüyor.
 

akcygt11

Altın Üye
Katılım
14 Ağustos 2023
Mesajlar
29
Excel Vers. ve Dili
2021 - Türkçe
Altın Üyelik Bitiş Tarihi
27-10-2024
Dener misiniz
Kod:
Sub SeciliSekmeleriPdfYap()
    Dim Zaman As Double
    Zaman = Now

    On Error GoTo hata

    ChDir Environ("UserProfile") & "\Desktop\"
    Dim Ds
    Set Ds = CreateObject("Scripting.FileSystemObject")
    Ds.CreateFolder Environ("UserProfile") & "\Desktop\PDF"

Bas:
    Yol = Environ("UserProfile") & "\Desktop\PDF\"

    Dim syf As Worksheet
    For Each syf In ActiveWindow.SelectedSheets
        
        syf.Select
      
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _
            Filename:=Yol & syf.Name & ".pdf", OpenAfterPublish:=False
    Next

    MsgBox "İşlem Tamamlandı." & vbLf & vbLf & _
        "İşlem Süresi ; " & Format(Now - Zaman, "hh:mm:ss")

    Exit Sub

hata:
    bilgi = MsgBox("Masaüstünüzde PDF klasörü mevcut. Dosyalar klasör içerisinde oluşturulacak. Aynı dosya varsa üzerine yazılsın mı?", vbYesNo)
    If bilgi = vbYes Then
        GoTo Bas
    End If
End Sub
 
Katılım
17 Mayıs 2012
Mesajlar
102
Excel Vers. ve Dili
Office 2019, Türkçe
Sub SeciliSekmeleriPdfYap() Dim Zaman As Double Zaman = Now On Error GoTo hata ChDir Environ("UserProfile") & "\Desktop\" Dim Ds Set Ds = CreateObject("Scripting.FileSystemObject") Ds.CreateFolder Environ("UserProfile") & "\Desktop\PDF" Bas: Yol = Environ("UserProfile") & "\Desktop\PDF\" Dim syf As Worksheet For Each syf In ActiveWindow.SelectedSheets syf.Select ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:=Yol & syf.Name & ".pdf", OpenAfterPublish:=False Next MsgBox "İşlem Tamamlandı." & vbLf & vbLf & _ "İşlem Süresi ; " & Format(Now - Zaman, "hh:mm:ss") Exit Sub hata: bilgi = MsgBox("Masaüstünüzde PDF klasörü mevcut. Dosyalar klasör içerisinde oluşturulacak. Aynı dosya varsa üzerine yazılsın mı?", vbYesNo) If bilgi = vbYes Then GoTo Bas End If End Sub
çok teşekkürler oldu bu
 
Üst