• DİKKAT

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

Yazdır Butonu

Katılım
25 Ekim 2006
Mesajlar
275
Excel Vers. ve Dili
türkçe
Herkese iyi geceler sevgili arkadaşlar bir yazdır butonu ile sadece yazıcının boş sayfaları görmeden sadece dolu sayfaların yazdırılması mümkünmü acaba yani ekte gönderdiğim dosyamın 1.sahifesi boş 2. Dolu 3. sahifesi boş olup yazdır butonuna tıklayıncası sadece 2. sayfa yazılsın istiyorum herkese teşekkürler.
 

Ekli dosyalar

. . .

Yazdırma alanları her zaman sabit mi ?
Örneğin; 1.sayfa F1:J17, 2.sayfa F18:J39 mu olacak.

. . .
 
şöyle bi kod buldum yabancı siteden, eleman çalıştı demiş.
http://www.vbforums.com/showthread....y-quot-pages&p=3042437&viewfull=1#post3042437
Kod:
Sub Printaj_Naslove()
   Dim ws As Worksheet
   Dim prRange As Range
   Dim vp As Long, hp As Long
   Dim i  As Long, j  As Long
   Dim c1 As Long, c2 As Long
   Dim r1 As Long, r2 As Long
   Dim n  As Long
   Dim BreakRows() As Long
   Dim BreakCols() As Long
   Dim PageRange As Range
   
   Set ws = ThisWorkbook.Sheets("Naslovi")
   With ws
      vp = .VPageBreaks.Count
      hp = .HPageBreaks.Count
      
      ReDim BreakCols(0 To vp + 1)
      ReDim BreakRows(0 To hp + 1)
      
      Set prRange = .Range(.PageSetup.PrintArea)
      
      BreakCols(0) = prRange.Column
      For i = 1 To vp
         BreakCols(i) = .VPageBreaks(i).Location.Column
      Next
      BreakCols(vp + 1) = BreakCols(0) + prRange.Columns.Count
      
      BreakRows(0) = prRange.Row
      For j = 1 To hp
         BreakRows(j) = .HPageBreaks(j).Location.Row
      Next
      BreakRows(hp + 1) = BreakRows(0) + prRange.Rows.Count
      
      For i = 0 To vp
         c1 = BreakCols(i)
         c2 = BreakCols(i + 1) - 1
         For j = 0 To hp
            r1 = BreakRows(j)
            r2 = BreakRows(j + 1) - 1
            Set PageRange = .Range(.Cells(r1, c1), .Cells(r2, c2))
            n = WorksheetFunction.Subtotal(103, PageRange) '-- Count non-blank cells
            If n > 0 Then
                'DEBUG MODU AKTİF YANİ SADECE IMMEDIATE WINDOWDA GORUNUR               
               Debug.Print PageRange.Address

               'ÇALIŞAN VERSIYONUNDA ALT SATIRDAKİ YORUM İŞARETİNİ KALDIR
               'ÜST  SATIRDAKİ Debug.Print satırına yorum işareti koy.
               'PageRange.PrintOut
            End If
         Next
      Next
   End With
End Sub
 
Yazdırma alanları her zaman sabit olmayıp yazdır butonuna tıklandığında sadece dolu sayfaya göre işlem yapacak boş sayfalara ait boş kağıt çıkarmasın istiyorum
 
Geri
Üst