In Bestimmten Zellenbereich jeder Zeile wenn dort leer ist, dann ganze Zeile ausblenden.
Bekomme das nicht so ganz hin… “bisschen“ Hilfe könnte ich gebrauchen
Zitat:Sub autoAus()
Dim zeile As Integer
zeile = 2
For zeile = 2 To 6
If Range("B" & zeile).Value = "" Then '= "0" Then
Rows(zeile).Hidden = True
Else
End If
Next zeile
End Sub
Anbei die Datei: [
attachment=42534]
Danke in Voraus,
Niko
Hallo,
der Ansatz ist falsch. Wenn du Zeilen ausblenden / Löschen willst, muss die Schleife von unten nach oben laufen. Also: For Zeile = 6 to 2 Step -1
Danke für die Antwort
doch es funktioniert nicht wie es soll, habe die Datei mit der vorgeschlagenen Änderung eingefügt.
Zeilen sind nicht bis 6 sondern bis 13, sry mein Fehler
Im Grunde werden damit alle Zeilen ausgeblendet die in spalten Bereich B2:B13 kein wert beinhalten.
Brauche aber ein ganzen Zeilen Bereich.
Beispiel: wenn von B2 bis D2 kein wert vorhanden dann soll nur die Zeile 2 ausgeblendet werden.
In der nächsten Zeile B3:D3 wenn auch dort kein wert dann soll nur die Zeile 3 ausgeblendet werden.
Das bis Zeile 13.
Datei:[
attachment=42536]
Zitat:Sub autoAus()
Dim zeile As Integer
zeile = 2
For zeile = 13 To 2 Step -1
If Range("B" & zeile).Value = "" Then '= "0" Then
Rows(zeile).Hidden = True
Else
End If
Next zeile
End Sub
Hi
Code:
Sub autoAus()
Dim zeile As Integer
For zeile = 2 To 13
If Join(Application.Transpose(Application.Transpose(Cells(zeile, 2).Resize(1, 3).Value)), "") = "" Then Rows(zeile).Hidden = True
Next zeile
End Sub
Für Ausblenden muss die Schleife nicht Rückwärts.(kann aber)
Gruß Elex
Beide funktionieren
und von beiden habe ich etwas dazugelernt...danke
Hallo
meine Frage ist ob mir evtl. jemand sagen könnte wie hier im Auszug,
der Bereich B - D angesprochen wurde damit ich es nur auf die Zellen in in Spalte D
anpassen kann .
Transpose(Cells(zeile, 2).Resize(1, 3).Value)), "")
Vielen Dank Euch
Hi,
Cells(zeile, 2) bezeichnet Spalte B (die 2. Spalte) in Zeile zeile. Resize(1, 3) verändert die Größe des angegebenen Bereichs, so dass er am Ende 1 Zeilen hoch und 3 Spalten breit ist.
Wenn du also Spalte "D" (die 4. Spalte) ansprechen willst, verwendest du entweder Cells(zeile, 4) und lässt das Resize weg, oder du nimmst Cells(zeile, 2).Offset(0, 2) Damit sprichst du die Zellle zwei Zellen rechst von Spalte B an.
Wenn du tatsächlich nur eine Zelle brauchst, dann kannst du auch gleich auf den auf das ganze Drumherum verzichten und verwendest direkt If Cells(zeile, 4) = "" Then Rows(zeile).Hidden = True oder auch If IsEmpty(Cells(zeile, 4)) Then Rows(zeile).Hidden = True
Moin,
wenn ich Helmut da noch ergänzen darf:
Helmut schrieb:wenn du tatsächlich nur eine Zelle brauchst, dann kannst du auch gleich auf den auf das ganze Drumherum verzichten ...
... und den Autofilter verwenden.
Viele Grüße
derHöpp
Danke euch beiden
Danke euch beiden