Soru PDF kaydetme yardım

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,793
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Makro ile o hücre boş olarak görünmediği içindir bu sorun.
Ben size Pdftk yı önermiştim. Siz bakmadınız bile. Size bağlantısını da gönderiyorum. Daha ne yapabilirim ki?
PdfTkb_Setup
İyi çalışmalar
 
Katılım
27 Mart 2019
Mesajlar
37
Excel Vers. ve Dili
2013 türkçe
Tevfik Bey pdf ile çok haşır neşir olduğumdan pdf birleştirmede hiçbir sıkıntım olmadığı için o programa bakmadım. Yoksa sizinle ilgili bir şey değil. Yanlış anlamayın. Ben de acrobat pro, pdf split and merger, A pdf gibi programlar var orada sıkıntım yok.
Benim kafama takılan iki farklı sayfada çalışan kod diğerinde neden çalışmıyor cevap aradığım soru bu.
Hatta çalışmayan kod da değil burada gizli olan satırlar neden boş sayfa olarak yazdırılıyor.
Sizin gönderdiğiniz yöntemi kullandım. hatta kullandığınız yöntemi anlamak için bayağı uğraştım bana çok şey kattı sadece o değil diğeri de aynı şekilde tekrar teşekkürler.
 
Katılım
27 Mart 2019
Mesajlar
37
Excel Vers. ve Dili
2013 türkçe
Tevfik Bey pdf ile çok haşır neşir olduğumdan pdf birleştirmede hiçbir sıkıntım olmadığı için o programa bakmadım. Yoksa sizinle ilgili bir şey değil. Yanlış anlamayın. Ben de acrobat pro, pdf split and merger, A pdf gibi programlar var orada sıkıntım yok.
Benim kafama takılan iki farklı sayfada çalışan kod diğerinde neden çalışmıyor cevap aradığım soru bu.
Hatta çalışmayan kod da değil burada gizli olan satırlar neden boş sayfa olarak yazdırılıyor.
Sizin gönderdiğiniz yöntemi kullandım. hatta kullandığınız yöntemi anlamak için bayağı uğraştım bana çok şey kattı sadece o değil diğeri de aynı şekilde tekrar teşekkürler.
Bu programı okuldaki arkadaşlar da kullanacak onun için ne kadar sade olursa o kadar iyi.
 

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,793
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Rica ederim. Boş basılan sayfadaki hücreye bakın sanırım o da chr(46) gösterecek.
İyi çalışmalar
 

Tevfik_Kursun

Altın Üye
Katılım
30 Temmuz 2012
Mesajlar
3,793
Excel Vers. ve Dili
Office 2016 Pro - Türkçe 64 Bit
Altın Üyelik Bitiş Tarihi
12-02-2029
Fonksiyonla bak arkadaşım. (benim örnekte var nasıl bakılacağı) Makro onu yok sayıyor. Bunu tespit etmem o gün bir saatten fazlamı aldı.
 
Katılım
8 Kasım 2015
Mesajlar
17
Excel Vers. ve Dili
2011-türkçe
Altın Üyelik Bitiş Tarihi
25-10-2023
Sayın üstadlar,

Öncelikle tüm forum ekibinin ramazan bayramını kutlarım.

Bir konu hakkında çalışma yapıyorum ancak kod kısmında takıldım. Desteklerinizi arz ediyorum.

Yapmaya çalıştığım işlem aşağıdaki gibidir:

Butona bastığımda;
1- Veri doğrulama sayfasında bulunan il isimlerine göre G sütununda sırası ile filtreleme yapılacak
2-İl filtrelemesi sonrasında I sütununda AÇIK şartına göre filtreleme yapacak
3-Her bir filtreleme işlemi veri doğrulama sayfasındaki il sıralamasına göre pdf olarak kaydedilecek
4-Belge adına il adı da eklenecek

Destekleriniz ve yönlendirmeleriniz için çok teşekkür ederim.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,247
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Sayfanızın yazdırma alanı ayarlarını yaptıktan sonra aşağıdaki kodu deneyiniz.

PDF dosyaları excel dosyanızın bulunduğu klasöre kayıt edilir. "Yol" değişkenini düzenleyerek bunu dilediğiniz gibi değiştirebilirsiniz.

Kod:
Option Explicit

Sub PDF_KAYDET()
    Dim S1 As Worksheet, S2 As Worksheet
    Dim Yol As String, X As Long, Son As Long
    Dim Hesaplama_Yontemi As Long
   
    Hesaplama_Yontemi = Application.Calculation
   
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
   
    Set S1 = Sheets("Veri")
    Set S2 = Sheets("veridoğrulama")
    Yol = ThisWorkbook.Path & Application.PathSeparator
   
    Son = S2.Cells(S2.Rows.Count, 1).End(3).Row
   
    For X = 2 To Son
        If S2.Cells(X, 1) <> "" Then
            S1.Range("A1:I" & S1.Rows.Count).AutoFilter 7, S2.Cells(X, 1)
            S1.Range("A1:I" & S1.Rows.Count).AutoFilter 9, "AÇIK"
            If S1.Cells(S1.Rows.Count, 1).End(3).Row > 1 Then
                S1.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Yol & S2.Cells(X, 1) & " MAYIS AYI UYGUNSUZLUK GÜNCEL.pdf", _
                Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
            End If
        End If
    Next
   
    On Error Resume Next
    S1.ShowAllData
    On Error GoTo 0

    Application.Calculation = Hesaplama_Yontemi
    Application.ScreenUpdating = False

    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 
Katılım
8 Kasım 2015
Mesajlar
17
Excel Vers. ve Dili
2011-türkçe
Altın Üyelik Bitiş Tarihi
25-10-2023
Kayhan Hocam,

Kodları şirkete özel bilgiler olan asıl dosya entegre ederek düzenleme yaptım. Ancak aşağıdaki kod satırı için uyarı alıyorum: Belge kaydedilmedi. Belge açık olabilir veya kaydederken bir hatayla karşılaşıldı.

S1.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Yol & S2.Cells(X, 5) & " MAYIS AYI UYGUNSUZLUK GÜNCEL.pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

Düzenlenen kodlar

Sub PDF_KAYDET()
Dim S1 As Worksheet, S2 As Worksheet
Dim Yol As String, X As Long, Son As Long
Dim Hesaplama_Yontemi As Long

Hesaplama_Yontemi = Application.Calculation

Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual

Set S1 = Sheets("GÖZLEM KÜTÜĞÜ")
Set S2 = Sheets("veri doğrulama")
Yol = ThisWorkbook.Path & Application.PathSeparator

Son = S2.Cells(S2.Rows.Count, 5).End(3).Row

For X = 2 To Son
If S2.Cells(X, 5) <> "" Then
S1.Range("A1:p" & S1.Rows.Count).AutoFilter 6, S2.Cells(X, 5)
S1.Range("A1:p" & S1.Rows.Count).AutoFilter 16, "AÇIK"
If S1.Cells(S1.Rows.Count, 16).End(3).Value = "AÇIK" Then
S1.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Yol & S2.Cells(X, 5) & " MAYIS AYI UYGUNSUZLUK GÜNCEL.pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False
Else
End If
End If
Next

On Error Resume Next
S1.ShowAllData
On Error GoTo 0

Application.Calculation = Hesaplama_Yontemi
Application.ScreenUpdating = False

MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,247
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Excel versiyonunuz nedir?
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,247
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Versiyonunuz bu işlem için uygun görünüyor. Ben çalıştırdığımda hata almadan işlem tamamlandı.
 
Katılım
8 Kasım 2015
Mesajlar
17
Excel Vers. ve Dili
2011-türkçe
Altın Üyelik Bitiş Tarihi
25-10-2023
Versiyonunuz bu işlem için uygun görünüyor. Ben çalıştırdığımda hata almadan işlem tamamlandı.
Korhan Hocam,

veridoğrulama sayfasının 5. sütununda 157 tane firma adı var. Bunlardan 4-5 tanesine işlemi uyguluyor, sonra bahsettiğim hatayı vererek işlemi yarıda kesiyor.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,247
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Asıl belgenizde oluşan durumu bilemiyorum. Görmeden yorum yapamam..
 
Katılım
8 Kasım 2015
Mesajlar
17
Excel Vers. ve Dili
2011-türkçe
Altın Üyelik Bitiş Tarihi
25-10-2023
Merhaba,

Sayfanızın yazdırma alanı ayarlarını yaptıktan sonra aşağıdaki kodu deneyiniz.

Korhan Hocam,

Çalışmamı istediğim gibi tamamladım. Desteğiniz için çok teşekkür ederim.
 
Üst