Registriert seit: 25.11.2018
Version(en): 2016 Plus
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:
Leere_Zeilen_wenn_Zellen.xlsm (Größe: 18,06 KB / Downloads: 1)
Danke in Voraus,
Niko
Registriert seit: 11.04.2014
Version(en): Office 365
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
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter,
der Misserfolg ist ein Waisenkind
Richard Cobden
Registriert seit: 25.11.2018
Version(en): 2016 Plus
15.03.2022, 13:05
(Dieser Beitrag wurde zuletzt bearbeitet: 15.03.2022, 13:06 von Niko.)
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:
Leere_Zeilen_wenn_Zellen2.xlsm (Größe: 18,13 KB / Downloads: 4)
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
Registriert seit: 11.04.2014
Version(en): Office 365
Hallo,
versuche es mal so:
Code:
Option Explicit
Sub autoAus()
Dim intZeile As Integer
Dim intLeer As Integer
Dim rngZelle As Range
For intZeile = 13 To 2 Step -1
intLeer = 0
For Each rngZelle In Range(Cells(intZeile, 2), Cells(intZeile, 4))
If rngZelle.Value = "" Then
intLeer = intLeer + 1
End If
Next rngZelle
If intLeer = 3 Then
Rows(intZeile).Hidden = True
End If
Next intZeile
End Sub
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter,
der Misserfolg ist ein Waisenkind
Richard Cobden
Registriert seit: 16.08.2017
Version(en): 2007 / 2010 / Web
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
Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:1 Nutzer sagt Danke an Elex für diesen Beitrag 28
• Niko
Registriert seit: 25.11.2018
Version(en): 2016 Plus
Beide funktionieren
und von beiden habe ich etwas dazugelernt...danke
Registriert seit: 21.02.2021
Version(en): 2019
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
Registriert seit: 28.08.2022
Version(en): 365
27.09.2022, 15:35
(Dieser Beitrag wurde zuletzt bearbeitet: 27.09.2022, 15:35 von HKindler.)
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
Gruß,
Helmut
Win10 - Office365 / MacOS - Office365
Registriert seit: 26.09.2022
Version(en): 2019
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
Folgende(r) 1 Nutzer sagt Danke an derHoepp für diesen Beitrag:1 Nutzer sagt Danke an derHoepp für diesen Beitrag 28
• HKindler
Registriert seit: 21.02.2021
Version(en): 2019
27.09.2022, 17:41
(Dieser Beitrag wurde zuletzt bearbeitet: 27.09.2022, 17:41 von BrianMolko1980.)
Danke euch beiden
Danke euch beiden