Makro Sayfa Yazdırma

Katılım
17 Ağustos 2006
Mesajlar
106
Arkadaşlar şöyle bir şey yapmak mümkün mü?

Örneğin bir excel dosyamız var. Bu dosyada iki sayfa var. Sayfa1 ve Sayfa2

Sayfa1 de ve Sayfa2 de tablo var. Sayfa1 de 20 Sayfalık bir tablo ve Sayfa2 de de 20 sayfalık bir tablo var. Makro ile yazdırdığımda önce
Sayfa1'in 1. Sayfası Sonra
Sayfa2'nin 1. Sayfasını
Sayfa1'in 2. Sayfası
Sayfa2'nin 2. Sayfası
sayfa1'in 3. Sayfası
Sayfa2'nin 3. Sayfası

.
.
.

Makro ile bu şekilde yazdırma şansım var mı?
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,759
Excel Vers. ve Dili
Excel 2019 Türkçe
Kod:
Sub sirayla_yazdir()
For j = 1 To 20
    For i = 1 To 2
        Sheets(i).PrintOut j, j
    Next
Next
End Sub
 
Katılım
17 Ağustos 2006
Mesajlar
106
Hamit bey merhaba

Soruyu sanırım biraz eksik sordum kusura bakmayım.

Sayfa1 ve Sayfa2 deki tablolar değişken

Yani sayfa1 ve sayfa2 deki sayfa sayıları değişebiliyor. Sabit olarak 20 sayfa değil. bazen 1 sayfa bazen 10 sayfa da olabilir. Ancak sayfa1 de 15 sayfalık bir tablo varsa sayfa2 de de 15 sayfalık bir tablo oluyor. Tek seferde yazdırmak istediğimde
Yukarda da dediğim gibi önce sayfa1'in 1.sayfası sonra sayfa2'nin 2. sayfası diye yazdırmasını istiyorum
 

hamitcan

Uzman
Uzman
Katılım
1 Temmuz 2004
Mesajlar
7,759
Excel Vers. ve Dili
Excel 2019 Türkçe
Birşeyler yapmaya çalıştım ama...
Kod:
Sub sirayla_yazdir()
ilksayfasonu = Worksheets(1).HPageBreaks(1).Location.Row - 1
sonsayfa = WorksheetFunction.RoundUp(Worksheets(1).Cells.SpecialCells(xlCellTypeLastCell).Row / sayfasonu, 0)
For j = 1 To sonsayfa
    For i = 1 To 2
        Sheets(i).PrintOut j, j
    Next
Next
End Sub
 
Üst