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
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.

Als Antwort auf diesen Beitrag
IseGrimm
25.05.2026 17:34:51
Ausblenden von Zeilen bei bestimmten Voraussetzungen
habe wenig Vorkenntnisse in VBA. Ich möchte in einem Spiel bei Runde 1 die übrigen Runden (2-5 z.B.) ausblenden.
Ich habe mir das mühsam zusammengeschustert - funktioniert natürlich nicht richtig.
Mein Problem ist: wenn ich in A1 eine 1 eingebe und mit Enter bestätige, muss ich noch einmal die Zelle A1 anklicken, damit es funktioniert. Was mache ich falsch?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, Range("A1")) Is Nothing Then
Else
Cells.EntireRow.Hidden = False
If Range("A1") = 1 Then
Rows("10:20").EntireRow.Hidden = True
End If
If Range("A1") = 2 Then
Rows("20:30").EntireRow.Hidden = True
End If
End If
End Sub



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.