HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Entdecke rund 2 Millionen Excel-Lösungen im
Forumsarchiv
Forumbeitrag
Excel-Version des Fragestellers:
2022
Erfahrungslevel des Fragestellers:
VBA nur mit Recorder
Daniel
25.05.2026 18:13:11
AW: Ausblenden von Zeilen bei bestimmten Voraussetzungen
"-Exit Sub macht den Code übersichtlicher als ein leeres Else."

Das Exit Sub an dieser Stelle sorgt aber für Probleme, wenn wenn an in diesem Event noch weitere Codes für andere Einganezellen benötigt.
Daher ist es die schlechtere Wahl und das leere else die bessere, weil man dann sieht: "hier geht es weiter, wenn andere Zellen geändert werden werden"

Wobei ich aber auch die Logik umdrehen würde mit

If not Intersect(Range("A1"), Target) is Nothing Then

Hier der Code
End If


Aber Exit Sub ist immer "Quick and dirty" und hat schon häufiger zu nachfragen in den Foren geführt, wenn das Makro für andere Zellen erweitert werden soll.

Gruß Daniel
Als Antwort auf diesen Beitrag
Marc
25.05.2026 18:01:27
AW: Ausblenden von Zeilen bei bestimmten Voraussetzungen
Das Verhalten kommt daher, dass du das Ereignis Worksheet_SelectionChange verwendest. Dieses wird nur ausgelöst, wenn die Auswahl auf ein anderes Feld wechselt, nicht wenn der Inhalt einer Zelle geändert wird.

Biespiel:



Private Sub Worksheet_Change(ByVal Target As Range)

If Intersect(Target, Range("A1")) Is Nothing Then Exit Sub

Rows.Hidden = False

Select Case Range("A1").Value
Case 1
Rows("10:20").Hidden = True

Case 2
Rows("20:30").Hidden = True

Case 3
Rows("30:40").Hidden = True

Case 4
Rows("40:50").Hidden = True

Case 5
Rows("50:60").Hidden = True
End Select

End Sub



zusätzlich:
-Exit Sub macht den Code übersichtlicher als ein leeres Else.
- Range("A1").Value ist sauberer als nur Range("A1").
- Rows.Hidden = False blendet zunächst alle Zeilen wieder ein.
- Select Case ist bei mehreren Werten deutlich lesbarer als viele If-Abfragen.

Antwort auf Beitrag erstellen
Bitte einen Anwendernamen ohne @ eingeben.
Bitte das Passwort eingeben.
Bitte eine gültige E-Mail-Adresse eingeben.
Bitte einen Betreff eingeben.
Weitere Optionen
Aktivieren, wenn die Frage/der Beitrag noch nicht beantwortet wurde und unter Listen > Offene Threads erscheinen soll.
Beispieldatei hochladen

Bitte einen Nachrichtentext eingeben.