• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Veri varsa yazdır

  • Konbuyu başlatan Konbuyu başlatan abtani
  • Başlangıç tarihi Başlangıç tarihi
Katılım
10 Eylül 2007
Mesajlar
140
Excel Vers. ve Dili
Excel 2003
Ekli dosyada belirtmeye çalıştığım gibi veri olan bölgeyi,olmayan yerleri atlayarak yazdırmak istiyorum.Sitede bazı konulara baktım,fakat sağlıklı bir çözümü kendim elde edemedim.Nasıl bir kod ile bu sorun aşabilirim.
 
Konuyu yanlış yeremi açtım acaba?
 
Anladığım kadarıyla söylüyorum : Yazdırma Alanlarını 1'den fazla butonla tanımlayabilirsiniz. Yada aralıkları tanımlayıpta yazdırabilirsiniz.
 
Anladığım kadarıyla söylüyorum : Yazdırma Alanlarını 1'den fazla butonla tanımlayabilirsiniz. Yada aralıkları tanımlayıpta yazdırabilirsiniz.

Sayın Seyit Tiken 1. mesaja eklediğim dosyaya dediklerinizi Vba ile uyarlayıp ekleyebilirmisiniz.Teşekkür eder,saygılar sunarım.
 
Dosyanızdan bir şey anlayamadım. Aşağıdaki kodları kendinize uyarlayınız.
Kod:
Sub Düğme1_Tıklat()
[a1:e20].PrintOut
End Sub

Sub yazdır()
s = InputBox("Yazdırılacak Aralık Girin, a1:e20 gibi")
If s = IsNothing Then Exit Sub
Range(s).PrintOut
End Sub
 
Sanıyorum anlatamadım.Yazdırma alanı [B11:P4992]
1-Yazdırılacak alan B11 ile başlıyor,P4992 ile bitiyor.
2-Yazdırılacak alanın birinci satırı B11-P11.
3-B12-P12 satırında veri olmaz ise bu satır yazılmayacak,son iki satır olan
B4991-P4991 satırı ile B4992-P4992 yazdırılacak.(son 2 satırda bazı hücrelerin toplamı elde edilmektedir.)
4-B12-P12 satırında veri varsa b11-b12 satır ile b4991-b4492 satırı yazdıracak.
5-B13 ile başlayan satırda veri varsa b11-b12-b13 lü satır ile b4991-b4492 satırı yazdırılacak.
6-B25 ile başlayan satırda veri varsa b11-b12-b13-b14-....b24-b25 satırları ile b4991-b4492 satırı yazdıracak.
7-Her sayfanın sonunda [b4495 : p4495] ile [b4496 : p4496] verileri yazılacak
NOT:B25 de veri varsa mutlaka üstteki satırlarda veri vardır,örnek dosya 1. mesajdadır.
 
Son düzenleme:
Sayın Seyit Tiken;
7. mesajda açıklamaya çalıştığım isteğim konusunda bir çözüm üretilebilirmi?
 
Sanırım sorunu çözemeyeceğiz
 
Selamlar,

Ekteki örnek dosyayı incelermisiniz.
 
Sayın Korhan Ayhan tam istediğim gibi olmuş.
Fakat bazı durumlarda E,G,H,I,J,K,L,M sütunlarında veri oluşmamakta.Bu durumda
1-Oluşacak tabloyu E,G,H,I,J,K,L,M sutunlarını gizleyerek bir sayfaya aktarma,
2-Tablo yazdırma alanında bir değişiklik olmadan bazı hücrelerde veriler değiştirilerek yazdırma makrolarına ihtiyaç duyulabilecektir.
Bu durum için bir şeyler yapılabilirmi?Teşekkür eder,saygılar sunarım.
NOT:Yazdır dediğimizde baskı ön izleme-kenar boşluğu-alt kısmı her zaman "18,6" gelmekte,yani sayfanın yarısı boş oluyor.Sanırım bir değişiklik yapılmalı.Beceremedim.
 
Son düzenleme:
Sayın Korhan Ayhan;
Üstteki mesajda belirttiğim boş sütunlar ile kısmi GİZLE ile çözdüm.Fakat "Yazdır" dediğimizde baskı ön izleme-kenar boşluğu-alt kısmı her zaman "18,6" gelmekte,yani sayfanın yarısı boş oluyor.Sanırım bir değişiklik yapılmalı.Beceremedim.
 
Son düzenleme:
Sayın Korhan Ayhan;
Üstteki mesajda belirttiğim boş sütunlar ile kısmi GİZLE ile çözdüm.Fakat "Yazdır" dediğimizde baskı ön izleme-kenar boşluğu-alt kısmı her zaman "18,6" gelmekte,yani sayfanın yarısı boş oluyor.Sanırım bir değişiklik yapılmalı.Beceremedim.
Tam anlamasamda parantez içindeki değerlerle oynayarak istediğim gibi yazdırdım.
Teşekkürler Korhan Ayhan,sevgi ve saygıyla...

.LeftMargin = Application.InchesToPoints(0.196850393700787)
.RightMargin = Application.InchesToPoints(0.196850393700787)
.TopMargin = Application.InchesToPoints(0.393700787401575)
.BottomMargin = Application.InchesToPoints(7.32283464566929)
.HeaderMargin = Application.InchesToPoints(0)
.FooterMargin = Application.InchesToPoints(0.393700787401575)
 
Konu ile sitemizde bulduğum bir kod;
.LeftMargin = Application.InchesToPoints(0) 'Sol Marj Ayarı
.RightMargin = Application.InchesToPoints(0) 'Sağ Marj Ayarı
.TopMargin = Application.InchesToPoints(0.984251968503937) 'üst Marj Ayarı = 2.5 cm
.BottomMargin = Application.InchesToPoints(0.984251968503937) 'Alt Marj Ayarı
.HeaderMargin = Application.InchesToPoints(0.511811023622047) 'Üst bilgi marj ayarı
.FooterMargin = Application.InchesToPoints(0.511811023622047) 'Alt bilgi marj ayarı
 
Geri
Üst