Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1132to1136
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Ausgelbendete Zellen mitdrucken | Herbers Excel-Forum

Ausgelbendete Zellen mitdrucken
26.01.2010 08:34:47
sebibasti

Hallo liebe Leute,
gint es eine Möglichkeit per VBA Excel zu sagen, dass es ausgeblendete Zeilen mitdrucken soll?
Viele Grüße,
Basti

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ausgelbendete Zellen mitdrucken
26.01.2010 08:40:22
welga
Hallo,
was auf jeden Fall mit VBA geht,
Application.screenupdating = false
Zellen einblenden
drucken
Zellen wieder ausblenden
Application.screenupdating = true
Gruß
welga
AW: Ausgelbendete Zellen mitdrucken
26.01.2010 09:19:41
Tino
Hallo,
das schwierige dabei ist, erst mal zu erfahren welche Zeilen ausgeblendet sind und welche nicht.
Dazu hilft uns Code von Erich G. und ein Event nach Print.
Da ich mich nicht mit fremden Federn schmücken will, der Haupt- Code zum invertieren der Zeilen ist von Erich G und der funktioniert hierfür super.
Die Tabelle müsstest Du im Code noch anpassen, ich gehe mal von der Tabelle1 aus.
kommt als Code in DieseArbeitsmappe
Option Explicit 
 
Private Sub Workbook_BeforePrint(Cancel As Boolean) 
 Call SelectComplement(Tabelle1) 
 Application.OnTime Now + TimeSerial(0, 0, 1), "Event_After_Print" 
End Sub 
 
kommt als Code in Modul1
Option Explicit 
 
Dim rngNot_Visible As Range 
'******************************************************** 
'Code ist von Erich aus Kamp-Lintfort           * 
'******************************************************** 
 
Sub SelectComplement(oSh As Worksheet) 
Dim rngX As Range, rngC As Range, rngE As Range 
Set rngNot_Visible = oSh.Cells.SpecialCells(xlCellTypeVisible).EntireRow 
    
   For Each rngX In rngNot_Visible.Areas 
      Set rngC = ComplementRect(rngX) 
      If Not rngC Is Nothing Then 
         If rngE Is Nothing Then Set rngE = rngC Else Set rngE = Intersect(rngE, rngC) 
      End If 
   Next rngX 
    
   If Not rngE Is Nothing Then 
    Set rngNot_Visible = rngE 
    rngNot_Visible.EntireRow.Hidden = False 
   End If 
End Sub 
 
Function ComplementRect(rngA As Range) As Range 
   Dim zv As Long, zb As Long, sv As Long, sb As Long, rngT As Range 
 
   zv = rngA.Row 
   zb = zv + rngA.Rows.Count - 1 
   sv = rngA.Column 
   sb = sv + rngA.Columns.Count - 1 
    
   If zv > 1 Then Set rngT = Range(Rows(1), Rows(zv - 1)) 
   If zb < Rows.Count Then 
      If rngT Is Nothing Then 
         Set rngT = Range(Rows(zb + 1), Rows(Rows.Count)) 
      Else 
         Set rngT = Union(rngT, Range(Rows(zb + 1), Rows(Rows.Count))) 
      End If 
   End If 
   If sv > 1 Then 
      If rngT Is Nothing Then 
         Set rngT = Range(Cells(zv, 1), Cells(zb, sv - 1)) 
      Else 
         Set rngT = Union(rngT, Range(Cells(zv, 1), Cells(zb, sv - 1))) 
      End If 
   End If 
   If sb < Columns.Count Then 
      If rngT Is Nothing Then 
         Set rngT = Range(Cells(zv, sb + 1), Cells(zb, Columns.Count)) 
      Else 
         Set rngT = Union(rngT, Range(Cells(zv, sb + 1), Cells(zb, Columns.Count))) 
      End If 
   End If 
   Set ComplementRect = rngT 
End Function 
 
Sub Event_After_Print() 
   If Not rngNot_Visible Is Nothing Then 
    rngNot_Visible.EntireRow.Hidden = True 
    Set rngNot_Visible = Nothing 
   End If 
End Sub 
Gruß Tino
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige