Yazdırma alanı

Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
İyi akşamlar

H3 satırından başlayarak N sütununda dolu olan son hücreye kadar yazdırmak istiyorum. Satır sayısı değişken. Bazen 1 sayfa bazen 11 sayfa oluyor. Butona aşağıdaki makroyu atadım. Fakat dolu olan son satırı baz almayıp manuel ayarlamış olduğum yazdırma alanını yazdırıyor. Acaba üstte yenilenecek satırlar var acaba ondanmı kaynaklanıyor yada boş gözüken hücrelerde formül var ondan mı?

Sub Yaz1()
ActiveSheet.PageSetup.PrintArea = "$H$3:$N$" & Range("N65536").End(xlUp).Row

End Sub


üste yenilenecek satırlara komut olarak
PageSetup.PrintTitleRows = "$1:$5"
yazsam olurmu
 

Ayhan Ercan

Özel Üye
Katılım
10 Ağustos 2005
Mesajlar
1,571
Excel Vers. ve Dili
Microsoft 365- Türkçe
Sub Makro1()
Dim e As Integer
e = WorksheetFunction.CountA(Worksheets("Sayfa1").Range("w:w")) + 2

ActiveSheet.PageSetup.PrintTitleRows = "$1:$5"
ActiveSheet.PageSetup.PrintArea = "$H$3:$W$" & e
End Sub
 
Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
Sn. SchakaL
İlginiz için teşekkür ederim. Göndermiş olduğunuz kodlar istediğim gibi çalışmıyor. Normal yazdır gibi çalışıyor.
Benim istediğim ""H3 satırından başlayarak N sütununda dolu olan son hücreye kadar yazdırmak . Satır sayısı değişken. Bazen 1 sayfa bazen 11 sayfa oluyor."" Göndermiş olduğunuz kodlarla 4 sayfa çıktı alıyorum 1 dolu 3 boş. Yani "" dolu olan son satırı baz almayıp manuel ayarlamış olduğum yazdırma alanını yazdırıyor."" Sebebi ""boş gözüken hücrelerde formül var ondan mı? ""
 
Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
sn. forumdaşlar
Bu konuda yardımlarınızı esirgemeyin lütfen.
Toplama bilgilerle makroyu en son bu hale getirdim ama yine olmadı.

Sub Makro1()
ActiveSheet.PageSetup.PrintArea = ""
ActiveSheet.PageSetup.PrintTitleRows = "$1:$2"
ActiveSheet.PageSetup.PrintArea = "$H$3:$N$" & Range("I65536").End(xlUp).Row
ActiveWindow.SelectedSheets.PrintOut , Copies:=1, preview:=False, Collate:=True

End Sub

Yukarda da dediğim gibi boş gözüken hücrelerde formül var ondan mı?
 
Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
Hala uğraşıyorum fakat çözümleyemedim.
Şöyle bir deneme yapmak istiyorum. H1 hücresine yazdırılacak satır sayısını yazsam bunu makronun içinde nasıl ayarlayabilirim.

Sub Makro1()
ActiveSheet.PageSetup.PrintTitleRows = "$1:$2"
ActiveSheet.PageSetup.PrintArea = "$H$3:$N$" & Range("I65536").End(xlUp).Row
Buraya yazdıracağım satır sayısını veya sayfa sayısını nasıl ilave edebilirim
ActiveWindow.SelectedSheets.PrintOut , Copies:=1, preview:=False, Collate:=True

End Sub
 

Seyit Tiken

Uzman
Uzman
Katılım
23 Ağustos 2005
Mesajlar
4,651
Excel Vers. ve Dili
Excel : 2010
Benim bildiğim ve anladığım kadarıyla değişken satırlara yazdırma alanı uygulamak zordur. Bunun yerine alternatif çözümler geliştirmeniz daha mantıklı olur bence. Ben görüşümü söylüyorum : Eğer toplam 10 sayfanız varsa; her sayfa için(yada sayfalar için) bir yazdırma butonu oluşturup o şekilde sorununuzu halletmiş olursunuz. Örnek : 2 sayfa yazılacaksa, bir buton, 3 sayfa için bir button .......... bu şekilde.
 

Korhan Ayhan

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

Sn. kombo konuyla ilgili küçük bir dosya eklerseniz çözüme daha çabuk ulaşılacaktır.
 
Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
İlginiz için teşekkür ederim.
Kendi kendime konuşuyorum zannediyordum. :D
Bu arada bir parça yol aldım.
Makro hata veriyor ama F8 tuşuna basıp onaylayınca istediğim kadar sayfa basıyor. Hata 400 diyor. anlamadım ya neyse
 

Korhan Ayhan

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

Ekteki örneği incelermisiniz.
 
Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
sn COST CONTROL sn. Seyit Tiken
İlginiz için bir kez daha teşekkür ettikten sonra Bulmuş olduğum çözümü sizlerle paylaşmak istedim.
Önce G1 hücresine şu formülü yazdım :
=YUKARIYUVARLA((EĞERSAY(N3:N65536;">0")+2)/60;0)

Satır sayımı 60 olarak ayarladım.
Daha sonrada makroyu şu şekilde düzenledim:

Sub Yaz()
ActiveSheet.PageSetup.PrintTitleRows = "$1:$2"
ActiveSheet.PageSetup.PrintArea = "$H$3:$N$65500"
ActiveSheet.PrintOut From:=1, To:=[G1].Value, Copies:=1, preview:=False, Collate:=True

End Sub


Ve yazdır düğmesine tıkladığımda tam istediğim gibi sadece 2 sayfa yazdı ( G1 hücresi 2 olduğu için)
 

Korhan Ayhan

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

Benim gönderdiğim son dosyayıda incelemenizi öneririm. :hey:
 
Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
sn COST CONTROL
Gönderdiğiniz dosyayı sonradan gördüm şimdi inceliyordum.
iLGİNİZ İÇİN TEŞEKKÜR EDERİM.
 
Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
sn COST CONTROL
Göndermiş olduğunuz dosyadaki makro 4 satır yazdırmasına rağmen 2 sayfa çıktı verdi.

Edit : Özür olsun . Herhalde benim yazıcı ayarlarında bir sorun var . İki yüze yazdırmaya çalışıyor onun için 2. sayfayı boş veriyor. :hihoho: :)
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,243
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Sn. kombo ben örneği deneyerek göndermiştim. Fakat uyarınız üzerine üstteki dosyayı tekrar indirip denedim ve bende tek sayfa yazdırdı.
 
Katılım
17 Şubat 2006
Mesajlar
981
Excel Vers. ve Dili
M.Office Excel 2003 Tr.
kombo' Alıntı:
sn COST CONTROL
Göndermiş olduğunuz dosyadaki makro 4 satır yazdırmasına rağmen 2 sayfa çıktı verdi.

Edit : Özür olsun . Herhalde benim yazıcı ayarlarında bir sorun var . İki yüze yazdırmaya çalışıyor onun için 2. sayfayı boş veriyor. :)
Özürümü tekrar iletiyorum. Bu saatte forum sakin olunca Karşılıklı konuşmaya dönüştü :arkadas:
 
Üst