Soru Excel Dosyasını Pdf Olarak kayıt etme

Katılım
5 Ocak 2016
Mesajlar
129
Excel Vers. ve Dili
office 2010
Herkese Merhaba ,

excel dosyamda "çıktı alınacak sertifika" adında sayfam var. bu sayfada yazdırma alanı A1 ile S60 arasıdır. benim istediğim seçili alanı pdf dosyasına çevirmek. çevirirken de yeni oluşturulacak pdf dosyasının adını D3&" EĞİTİM SERTİFİKASI "&E20 hücresi şeklinde Masaüstüne kayıt etmesidir.

makro bilgim olmadığı için yapamadım internet üzerinde tam bu şekilde istediğime rastlamadım bunu yapmak mümkün müdür?

yardımcı olabileceklere teşekkürler.
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Merhaba örnek kod.
Kod:
Sub test()
Dim s1 As Worksheet, konum As String, adi As String, uzanti As String

Set s1 = Sayfa1 'çıktı alınacak sertifika sayfası

konum = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\"
adi = s1.Range("D3") & " EĞİTİM SERTİFİKASI " & s1.Range("E20")
uzanti = ".pdf"

    s1.ExportAsFixedFormat Type:=xlTypePDF, Filename:=konum & adi & uzanti
End Sub
 
Katılım
5 Ocak 2016
Mesajlar
129
Excel Vers. ve Dili
office 2010
Merhaba örnek kod.
Kod:
Sub test()
Dim s1 As Worksheet, konum As String, adi As String, uzanti As String

Set s1 = Sayfa1 'çıktı alınacak sertifika sayfası

konum = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\"
adi = s1.Range("D3") & " EĞİTİM SERTİFİKASI " & s1.Range("E20")
uzanti = ".pdf"

    s1.ExportAsFixedFormat Type:=xlTypePDF, Filename:=konum & adi & uzanti
End Sub
Adem hocam ,

çok teşekkür ederim

iyi günler dilerim,
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Rica ederim, iyi günler.
 
Katılım
5 Ocak 2016
Mesajlar
129
Excel Vers. ve Dili
office 2010
Adem hocam ,

çok teşekkür ederim

iyi günler dilerim,

Adem Hocam tekrar Merhaba ,

Yukarıdaki kod da pdf çevirme işlemi yapmıştık. pdf kodunu aşağıdaki formatındaki gibi düzenleme durumumuz var mı?

Çıktı sayfasındaki AK4 ve AK41 satırlarında "1" rakamı yazıyor. Buradaki rakamın data sayfasındaki A18 den sırasıyla başlayarak otomatik olarak olarak değişmesi ve değişirken Yazdırma alanını pdf çevirmesini istiyorum. data sayfasındaki A satırında ne zaman boş oldu o zaman pdf dönüştürme işlemi duracak şekilde bir kod düzeltmek mümkün müdür?

Dosya İndirme Linki
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Merhaba, data sayfası A18 den başlayıp, A sütunundaki son dolu hücreye kadar işlem yapan kodlar.
Kod:
Sub test()
Dim s1 As Worksheet, konum As String, adi As String, uzanti As String
Dim s2 As Worksheet, son As Long, i As Long

Set s1 = Sayfa1 'çıktı alınacak sertifika sayfası
Set s2 = Sayfa2 ' data sayfası

son = s2.Cells(Rows.Count, 1).End(3).Row
For i = 18 To son
    If s2.Cells(i, 1) <> "" Then
        wtih s1
            .Range("AK4").Value = s2.Cells(i, 1)
            .Range("AK41").Value = s2.Cells(i, 1)
        End With
        konum = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\"
        adi = s1.Range("D3") & " EĞİTİM SERTİFİKASI " & s1.Range("E20")
        uzanti = ".pdf"
        s1.ExportAsFixedFormat Type:=xlTypePDF, Filename:=konum & adi & uzanti
    End If
Next i
End Sub
 
Katılım
5 Ocak 2016
Mesajlar
129
Excel Vers. ve Dili
office 2010
Merhaba, data sayfası A18 den başlayıp, A sütunundaki son dolu hücreye kadar işlem yapan kodlar.
Kod:
Sub test()
Dim s1 As Worksheet, konum As String, adi As String, uzanti As String
Dim s2 As Worksheet, son As Long, i As Long

Set s1 = Sayfa1 'çıktı alınacak sertifika sayfası
Set s2 = Sayfa2 ' data sayfası

son = s2.Cells(Rows.Count, 1).End(3).Row
For i = 18 To son
    If s2.Cells(i, 1) <> "" Then
        wtih s1
            .Range("AK4").Value = s2.Cells(i, 1)
            .Range("AK41").Value = s2.Cells(i, 1)
        End With
        konum = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\"
        adi = s1.Range("D3") & " EĞİTİM SERTİFİKASI " & s1.Range("E20")
        uzanti = ".pdf"
        s1.ExportAsFixedFormat Type:=xlTypePDF, Filename:=konum & adi & uzanti
    End If
Next i
End Sub

Adem Hocam , teşekkürler kod güzel çalışıyor elinize sağlık. data sayfasında veri sayısı fazla olunca masaüstüne pdf olarak kayıt yaptığı için masaüstü doluyor. masa üstünde "yeni klasör" adında klasör açsam direkt onun içine atacak şekilde kodu düzenleme şansınız var mıdır?

teşekkürler ,
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Konum satırını değiştiriniz.
Kod:
konum = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\Yeni klasör\"
 
Katılım
5 Ocak 2016
Mesajlar
129
Excel Vers. ve Dili
office 2010
adem hocam ,

teşekkürler elinize sağlık. iyi günler dilerim
 
Üst