Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1696to1700
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

ganze Zeile ausblenden, wenn Zellwert Falsch ist

ganze Zeile ausblenden, wenn Zellwert Falsch ist
13.06.2019 14:00:46
Rina
Hallo liebe Forumsmitglieder,
und zwar funktioniert mein Code nur manchmal. Leider finde ich meinen Fehler nicht habe auch schon mehrere Versionen getestet.
Der Zellwert ist an eine Checkbox in einem Listenfeld geknüpft(funktioniert).
Heißt in der Zelle steht entweder Wahr oder FALSCH. (Tabelle2)
In der Tabelle1 sollen jetzt die Zeilen ausgeblendet werden wenn der zugeordnete Zellwert aus Tabelle2 Falsch ist.
Tabelle1 besteht aus verschiedenen Blöcken und je nach Wahrheitswert sollen die Blöcke sichtbar sein oder nicht.
Zwischen den Zeilen gibt es Leerzeilen die durch eine Oder-Funktion in Abhängigkeit der darunterliegenden Zeilen Ebenfalls Wahr oder Falsch sind.
(Blöcke werden komplett ausgeblendet)
Die Beispiel Datei geht bis Zeile 45.
Ich will den Code aber bis mindestens zur Zeile 166 ausführen können.
Manchmal klappt der Code und manchmal eben nicht.
Code:
Set WS = Worksheets("Tabelle1")
LastRow = WS.Cells(Rows.Count, 4).End(xlUp).Row
With WS
For i = 5 To 166 'LastRow-1
' Falls Wert in Zeile Falsch wird Zeile versteckt!
If .Cells(i, 4).Value = False Then
.Rows(i).Hidden = True
' Exit Sub
Else
Rows(i).Hidden = False
End If
Next i
End With
Alternative Codes: mit For Each
Dim c As Range
For Each c In WS.Range("D5:D45")
If c.Value = False Then
c.EntireRow.Hidden = True
Else
c.EntireRow.Hidden = False
End If
Next
mit Do Loop Until
i = 5
Do
Falls Wert in Zeile Falsch wird Zeile versteckt!
If .Cells(i, 4).Value = False Then
.Rows(i).Hidden = True
Exit Sub
Else
Rows(i).Hidden = False
End If
i = i + 1
Loop Until i = LastRow

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ganze Zeile ausblenden, wenn Zellwert Falsch ist
13.06.2019 15:05:48
Torsten
Hallo Rina,
und wo ist die Beispieldatei?
AW: ganze Zeile ausblenden, wenn Zellwert Falsch ist
13.06.2019 17:17:13
Daniel
Hi
warum nicht einfach Autofilter verwenden?
ansonsten auch so:
hier für kleinere Tabellen (ist aber langsam)
dim Zelle as Range
for Each Zelle in Columns(4).SpecialCells(xlcelltypeformulas, 4)
Zelle.EntireRow.Hidden = Not Zelle.Value
Next 
hier etwas aufwendiger, dafür aber schneller weil die Zeilen nicht einzeln, sondern gemeinsam in einem Schritt ausgeblendet werden:
dim Zelle as Range
dim Ausblenden as Range
Rows.Hidden = false
for each Zelle in Columns(4).SpecialCells(xlcelltypeformulas, 4)
if not Zelle.Value then
if Ausblenden is Nothing then
set Ausblenden = Zelle
else
set Ausblenden = Union(Ausblenden, Zelle)
end if
end if
Next
if Not Ausblenden is Nothing then Ausblenden.EntireRow.Hidden = True
das SpecialCells wählt hier alle Zellen mit Formel, welche einen Wahrheitswert als Ergebnis haben aus.
Gruß Daniel
Anzeige
AW: ganze Zeile ausblenden, wenn Zellwert Falsch ist
14.06.2019 11:07:00
Rina
Super Danke!
An den Autofilter hatte ich nicht gedacht :)
Die Lösung funktioniert einwandfrei ^^
Leider funktioniert der Code auch nur manchmal. Irgendwie überspringt der Code weiterhin manche Zellen und das aber nicht immer.
AW: ganze Zeile ausblenden, wenn Zellwert Falsch ist
13.06.2019 17:03:50
Rina
https://www.herber.de/bbs/user/130369.xlsx
Das Makro blendet nicht alle Zeilen aus!
Vereinzelt bleiben einige Zeilen eingeblendet, als ob sie geprüften Zellen übersprungen werden.

315 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige