Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bestimmte Zeilen Ausblenden

Bestimmte Zeilen Ausblenden
Janosch
Halli Hallo,
ich habe folgendes Problem:
Eine Tabelle (A1-J172) in die Daten eingetragen werden. Dabei gibt es verschiedene Abschnitte deren Beginn jeweils mit einer farblich hinterlegten Zeile visualisiert ist. Also 10 Spalten, von denen jeweils 2 zusammen gehören.
Schwer zu erklären...
Es geht darum, dass ich gerne die Zeilen ausblenden würde, die weder Farbe noch Formel noch Text enthalten.
Hier im Forum bin ich auf folgenden Code gestossen:
Sub Farbige_Zeilen_löschen()
On Error Resume Next
Application.ScreenUpdating = False
For i = 1 To 1000
If Range(Cells(i, 1), Cells(i, 256)).Interior.ColorIndex = -4142 Then
Rows(i).Hidden = True
End If
Next i
Application.ScreenUpdating = True
End Sub
Kommt mir entgegen, da nicht unbedingt immer alle Zellen innerhalb einer Zeile Farben beinhalten und diese Zeilen dennoch Hidden = False sein sollen.
Darüber hinaus hätte ich aber nun gern auch noch all die Zeilen Sichtbar, die Text oder Formeln enthalten. DARÜBER hinaus sollten 2 leere Zeilen immer angezeigt werden (um entsprechend Einträge machen zu können).
Ich hab mit ein wenig gebastel dann folgendes zusammengefuscht:
'

Sub Zeilen_ausblenden()
'On Error Resume Next
'Application.ScreenUpdating = False
'For i = 1 To 1000
'    If Range(Cells(i, 1), Cells(i, 256)).Interior.ColorIndex = -4142 And IsEmpty(Cells(i, 1))   _
_
And IsEmpty(Cells(i + 1, 1)) Then
'        Rows(i).Hidden = True
'    End If
'Next i
'Application.ScreenUpdating = True
'End Sub

Allerdings werden mir da nur die Zeilen angezeigt, die in der ersten Spalte einen Eintrag haben. Ich hätte aber gern sämtliche Zellen überprüft und weiß nicht, wie ich das hinbekomme. Und langsam geht mir die Geduld und die Ideen aus.
Hat hier vielleicht jemand eine Idee?

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

Betreff
Benutzer
Anzeige
AW: Bestimmte Zeilen Ausblenden
02.02.2012 18:58:59
Christian
Hallo Janosch,
du kannst natürlich in einer zweiten Schleife alle Zellen der jeweiligen Zeile abklappern oder einfach die Anzahl der Einträge in dieser Zeile prüfen (entspr. ANZAHL2) - in VBA für die Spalten A-J zB so:

For i = 1 To 1000
Rows(i).Hidden = (Application.CountA(Cells(i, 1).Resize(, 10)) = 0)
Next
'....

Gruß
Christian
AW: Bestimmte Zeilen Ausblenden
06.02.2012 16:33:24
Janosch
Zu erst vielen Dank Christian, und dann weiter im Programm. :-)
ich hab das jetzt folgender Maßen umgesetzt:
Public Sub Zeilen_ausblenden()
On Error Resume Next
Application.ScreenUpdating = False
For i = 1 To 1000
Rows(i).Hidden = (Application.CountA(Cells(i, 1).Resize(, 10)) = 0) And (Application.CountA( _
Cells(i - 1, 1).Resize(, 10)) = 0)
If (Application.CountA(Cells(i, 1).Resize(, 10)) > 0) Then Rows(i + 1).Hidden = False
Next i
Application.ScreenUpdating = True
End Sub

Gibt 's da noch Verbesserungsvorschläge?
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige