Excel çalışma kitabındaki sayfaları birleştirip PDF olarak kaydetme..

Katılım
26 Nisan 2009
Mesajlar
156
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
26-03-2024
Excel çalışma kitabında oluşturulan sayfa 1 ve sayfa 2 de bulunan çalışma alanlarını makro ile tek tıkla PDF olarak birleştirip çıktı almak istiyorum... Yardımcı olursanız sevinirim..
 
Katılım
26 Nisan 2009
Mesajlar
156
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
26-03-2024
Yardımcı olacak kimse yok mu arkadaşlar..
 
Katılım
26 Nisan 2009
Mesajlar
156
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
26-03-2024
ÖRNEK DOSYA
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,246
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu işlem için yeni sürüm excel kullanmanız gerekir. Profilinizde 2003 versiyon yazıyor.

Eğer yeni sürüm excel kullanıyorsanız MAKRO KAYDET yöntemini kullanarak gerekli kodları elde edebilirsiniz.
 
Katılım
26 Nisan 2009
Mesajlar
156
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
26-03-2024
Bu işlem için yeni sürüm excel kullanmanız gerekir. Profilinizde 2003 versiyon yazıyor.

Eğer yeni sürüm excel kullanıyorsanız MAKRO KAYDET yöntemini kullanarak gerekli kodları elde edebilirsiniz.
Korhan bey profildeki bilgi eski kalmış, benim amacım aynı excel kitabında oluşturulan sayfaların yazdırılabilir kısımlarını örnek dosyamdaki gibi sayfa 1 ve sayfa 2 yi birleştirerek tek bir şekilde pdf olarak kaydetmek. Konu ile ilgili örnek bir uygulama atarsanız sevinirim... Çok teşekkürler..
 
Katılım
26 Nisan 2009
Mesajlar
156
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
26-03-2024
Korhan bey örneklerde mevcut sayfayı PDF yapmalar anlatılmış ancak ben sayfa 1 ve sayfa 2 de bulunan yazdirma alanlarını birleştirerek tek bir PDF yapmak istiyorum bunun için bir örnek gönderebilirsiniz rica etsem..
 

netzone

Altın Üye
Katılım
10 Mayıs 2006
Mesajlar
791
Excel Vers. ve Dili
🅾🅵🅵🅸🅲🅴
⎝365 64 Bit 𝙏𝙍⎠
🆆🅸🅽🅳🅾🆆🆂
⎝11 64 Bit 𝙏𝙍⎠
Altın Üyelik Bitiş Tarihi
12-09-2027
Merhaba @muzo696,

Excel, yazdırma yada PDF olarak kaydetme işlemi yaparken aktif olan sayfayı baz alır. Sizin istediğiniz tek bir PDF de 2 sayfanın yer alması ise; bu işlemi Sayfa1 ve Sayfa2 tablarını Shift tuşuna basarak seçip PDF olarak kaydet demeniz yeterli olacaktır.

Makro kaydet yöntemiyle bu işlemi yaparsanız kodlara da erişmiş olursunuz.
Rich (BB code):
Sub s1s2PDFKaydet()
    Sheets(Array("Sayfa1", "Sayfa2")).Select
    Sheets("Sayfa1").Activate
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "C:\Users\...\Desktop\DEMO.pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
        True
End Sub
İyi çalışmalar.
 
Katılım
26 Nisan 2009
Mesajlar
156
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
26-03-2024
PDF yapmalar anlatılmış ancak ben sayfa 1 ve sayfa 2 de bulunan yazdirma alanlarını birleştirerek tek bir PDF yapmak istiyorum bunun için bir örnek yaparak ekleyebilirmisiniz malesef ben yapamadım...
 
Katılım
20 Şubat 2007
Mesajlar
655
Excel Vers. ve Dili
2007 Excel, Word Tr
Merhaba,
Excel kitabındaki iki sayfayı (Sayfa2, Sayfa3) tek sayfa pdf yapan makro. Sayfa adlarını siz değiştirirsiniz.

Kod:
Sub SayfalariTekPdfdeYaz()
    Dim wshTemp As Worksheet, wsh As Worksheet
    Dim rngArr() As Range, c As Range
    Dim i As Integer
    Dim j As Integer

    ReDim rngArr(1 To 1)
    For Each wsh In ActiveWorkbook.Worksheets
    If wsh.Name = "Sayfa2" Or wsh.Name = "Sayfa3" Then
        i = i + 1
        If i > 1 Then
            ReDim Preserve rngArr(1 To i)
        End If

        On Error Resume Next
        Set c = wsh.Cells.SpecialCells(xlCellTypeLastCell)
        If Err = 0 Then
            On Error GoTo 0

            Do While Application.CountA(c.EntireRow) = 0 And c.EntireRow.Row > 1
                Set c = c.Offset(-1, 0)
            Loop

            Set rngArr(i) = wsh.Range(wsh.Range("A1"), c)
        End If
    Else
    End If
    Next wsh

    Set wshTemp = Sheets.Add(after:=Worksheets(Worksheets.Count))

    On Error Resume Next
    With wshTemp
        For i = 1 To UBound(rngArr)
            If i = 1 Then
                Set c = .Range("A1")
            Else
                Set c = _
                  ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell)
                Set c = c.Offset(2, 0).End(xlToLeft)  'Skip one row
            End If

            If Application.CountA(rngArr(i)) > 0 Then
                rngArr(i).Copy c
            End If
        Next i
    End With
    On Error GoTo 0

    Application.CutCopyMode = False

    With ActiveSheet.PageSetup
        .Zoom = False
        .FitToPagesWide = 1
        .FitToPagesTall = 1
    End With

    ActiveWindow.SelectedSheets.PrintPreview

    i = InputBox("Print how many copies?", "ExcelTips", 1)
    If IsNumeric(i) Then
        If i > 0 Then
            ActiveSheet.PrintOut Copies:=i
        End If
    End If

    If MsgBox("Geçici oluşturulan sayfayı sileyim mi?", _
      vbYesNo, "ExcelTips") = vbYes Then
        Application.DisplayAlerts = False
        wshTemp.Delete
        Application.DisplayAlerts = True
    End If
End Sub
 

netzone

Altın Üye
Katılım
10 Mayıs 2006
Mesajlar
791
Excel Vers. ve Dili
🅾🅵🅵🅸🅲🅴
⎝365 64 Bit 𝙏𝙍⎠
🆆🅸🅽🅳🅾🆆🆂
⎝11 64 Bit 𝙏𝙍⎠
Altın Üyelik Bitiş Tarihi
12-09-2027
... birleştirerek tek bir PDF yapmak istiyorum ...
Merhaba, yukarıda belirttiğim şekilde çıktı aldığınızda zaten tek 1 PDF dosyası elde ediyorsunuz. PDF'in 1.Sayfasında Sayfa1 alanınızın, 2.Sayfasında Sayfa2 alanınızın çıktısı yer alıyor.

Tek bir PDF den kastınız 2 sayfayı birleştirip 2 değil Tek sayfadan oluşan bir PDF yapsın mı istiyorsunuz??? söyleminizden bu anlaşılmıyor.
 
Katılım
26 Nisan 2009
Mesajlar
156
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
26-03-2024
netzone evet aynen oyle istiyorum ornek bir dosyada uygulayabilirmisiniz..
 

netzone

Altın Üye
Katılım
10 Mayıs 2006
Mesajlar
791
Excel Vers. ve Dili
🅾🅵🅵🅸🅲🅴
⎝365 64 Bit 𝙏𝙍⎠
🆆🅸🅽🅳🅾🆆🆂
⎝11 64 Bit 𝙏𝙍⎠
Altın Üyelik Bitiş Tarihi
12-09-2027
netzone evet aynen oyle istiyorum ornek bir dosyada uygulayabilirmisiniz..
Merhaba,
Alt alta gelecek şekilde ayrı bir sayfaya kopyalayıp buradan PDF olarak kaydetmenizi @necati arkadaşımız paylaşmış onu kullanabilirsiniz.
*Bu şekilde kullanırsanız ufak bir sonunuz olabilir. Dosyanızda; Sayfa1: 14 Sütun, 32 Satır ve Sayfa2: 6 Sütun, 32 Satırdan oluşmuş. bu durumda ilk 6 sütun genişlikleriniz değişecektir.

Bunun Yerine 1. ve 2. sayfaları Sayfanızı yatay konuma getirip sol ve sağ tarafına Resim bağlantılı olarak ayarlarsanız Satır ve sütun boyutlarınız etkilenmeyecektir.

Bağlantılı resim olarak yapıştırmak için;
Çalışmanıza Yeni bir sayfa ekleyin, sayfayı yatay konuma getirin. (Çıktıyı buradan alacaksınız),
Sayfa1 de çıktı almak istediğiniz alanı seçin ve kopyalayın,
Yeni oluşturduğunuz sayfaya geçin ve Sağ tuş > Özel Yapıştır > Bağlı Resim yolunu izleyerek yapıştırıp sayfanın sol tarafına doğru konumlandırın.
Sayfa 2 için de aynı işlemi yapıp Yeni sayfada konumunu ayarlayın. Yeni oluşturduğunuz sayfayı Yazdırmak için makro oluşturun.
çıktınız aşağıdaki gibi olacaktır. İyi çalışmalar.

232349
 
Katılım
26 Nisan 2009
Mesajlar
156
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
26-03-2024
netzone Tek bir PDF den kastınız 2 sayfayı birleştirip 2 değil Tek sayfadan oluşan bir PDF yapsın mı istiyorsunuz??? söyleminizden bu anlaşılmıyor.

malesef anlatamadım kusura bakmayın excel de bulunan sayfa 1 ve sayfa 2 yi tek pdf de 2 ayrı sayfa olarak kaydetmek istiyorum...
 
Katılım
9 Ocak 2011
Mesajlar
354
Excel Vers. ve Dili
2007 Türkçe
Altın Üyelik Bitiş Tarihi
01-07-2023
Bence her sayfayı PDF olarak kaydedip Free bir PDF Merge programıyla birleştirin daha kolay olur.
 
Katılım
26 Nisan 2009
Mesajlar
156
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
26-03-2024
korhan bey benim istediğim aşağıdaki kod ile yapılan işin aynısı sitede araştırırken buldum ancak yüklediğim demo dosyamda çalıştıramadım yardımcı olurmusunu;

Private Sub CommandButton1_Click()

Dim syf(), yol As String, deg As String

syf = Array("KDV1-ÖNYÜZ", "KDV1-ARKAYÜZ")

Application.ScreenUpdating = False
yol = ThisWorkbook.Path
deg = "KDV1_On_Arka_" & Format(Now, "dd-mm-yyyy hh-mm-ss")

Sheets(syf).Select
ChDir yol
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
yol & "\" & deg & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False

Sheets("KDV1-ÖNYÜZ").Select
MsgBox "Pdf Olarak Kaydedildi.", vbInformation

End Sub
 

netzone

Altın Üye
Katılım
10 Mayıs 2006
Mesajlar
791
Excel Vers. ve Dili
🅾🅵🅵🅸🅲🅴
⎝365 64 Bit 𝙏𝙍⎠
🆆🅸🅽🅳🅾🆆🆂
⎝11 64 Bit 𝙏𝙍⎠
Altın Üyelik Bitiş Tarihi
12-09-2027
... malesef anlatamadım kusura bakmayın excel de bulunan sayfa 1 ve sayfa 2 yi tek pdf de 2 ayrı sayfa olarak kaydetmek istiyorum...
Merhaba, ilk verdiğim cevapta istediğiniz şekilde Tek dosyada 2 ayrı sayfa olarak PDF çıktısı alabiliyordunuz!

*Tuşa atamak istiyorsanız Makro kaydet butonuna bastıktan sonra işleminizi gerçekleştirin.
Yapmanız gereken tek işlem Shift tuşuna basıp Sayfa1 ve Sayfa2 yi seçili hale getirip PDF olarak yazdırmak yada kaydetmek.232353

Çıktınız bu şekilde oluşacaktır.
232352
 
Katılım
26 Nisan 2009
Mesajlar
156
Excel Vers. ve Dili
excel 2003 türkçe
Altın Üyelik Bitiş Tarihi
26-03-2024
korhan bey benim istediğim aşağıdaki kod ile yapılan işin aynısı sitede araştırırken buldum ancak yüklediğim demo dosyamda çalıştıramadım yardımcı olurmusunu;

Private Sub CommandButton1_Click()

Dim syf(), yol As String, deg As String

syf = Array("KDV1-ÖNYÜZ", "KDV1-ARKAYÜZ")

Application.ScreenUpdating = False
yol = ThisWorkbook.Path
deg = "KDV1_On_Arka_" & Format(Now, "dd-mm-yyyy hh-mm-ss")

Sheets(syf).Select
ChDir yol
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
yol & "\" & deg & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False

Sheets("KDV1-ÖNYÜZ").Select
MsgBox "Pdf Olarak Kaydedildi.", vbInformation

End Sub

incelemem için arkadaşlar bu kod ile yapılan gibi bir excele örnek yapıp yükleyebilirmisiniz...
 
Üst