Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zeilen ausblenden nach Klick OptionButto

Zeilen ausblenden nach Klick OptionButto
17.03.2021 09:27:48
Kristina
Guten Morgen!
Ich habe folgendes -für mich nicht lösbares- Problem:
In Tabelle1 gibt es 3 Optionsfelder (aus Formularsteuerelement). Die habe ich nicht umbennant oder sonstiges: Optionsfeld 50,51,52. Ich habe eine Zellverknüpfung auf L34 gemacht, wonach bei anklicken Optionfeld 50 dort ein Wert 1 kommt, bei Optionfeld 51 eine 2 und Optionfeld 52 eine 3.
Nun möchte ich wenn Optionfeld 51 angeklickt wird, dass die Zeilen 66-70 eingeblendet werden, ansonsten sollen diese Zeilen ausgeblendet sein.
Ich habe sämtliche Foren und Codes ausprobiert, es klappt nur wenn ich eine Enter-Eingabe habe, also z.B. wenn ich in Zelle L34 eine 2 eintrage, mit Enter bestätige. Aber wenn in Zelle L34 eine 2 erscheint (weil ich Optionsfeld 51 anklicke) funktioniert gar nichts mehr. Ich weiß nicht weiter...Ich brauche bitte Hilfe!!
Soll ich ein Makro zuweisen? wenn ja, wie soll der Code aussehen? soll ich in VBA einen Code eingeben? wenn ja, welcher, denn da hab ich schon einige Varianten (erfolglos) ausprobiert.
Vielen Dank!

Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Zeilen ausblenden nach Klick OptionButto
17.03.2021 09:33:29
ralf_b
denn da hab ich schon einige Varianten (erfolglos) ausprobiert.
Die Gefahr das wir dir Diese jetzt nochmal vorschlagen ist groß.
Ich würde das Worksheet_change event nutzen um die Zelle L34 abzufragen.
gruß
rb

AW: Zeilen ausblenden nach Klick OptionButto
17.03.2021 09:53:40
Kristina
Ich habe Worksheet_Change sowie Worksheet_SelectionChange ausprobiert
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If OptionButton51.Value = True Then
Rows("66:70").Hidden = True
Else
Rows("66:70").Hidden = False
End If
End Sub

Hier noch mal mit Change (Hier beziehe ich mich auf eine andere Zelle-das war zum Üben)
Private Sub Worksheet_Change(ByVal Target As Range)
Select Case Target.Address(False, False)
Case "K33"
Range("66:70").EntireRow.Hidden = IIf(Range("K33") = "x", True, False)
End Select
End Sub

Beide varianten funktionieren nur wenn ich irgendwie ein Enter verwende, aber nicht wenn die Bezugszelle "von alleine" den Wert ändert.

Anzeige
AW: Zeilen ausblenden nach Klick OptionButto
17.03.2021 10:13:07
ralf_b
im Codemodul Modul1
Sub Optionsfeld1_Klicken()
[A1] = 1
End Sub
Sub Optionsfeld2_Klicken()
[A1] = 2
End Sub

im codemodul Tabelle1
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "A1" Then
If [A1] = 1 Then
Rows("66:70").Hidden = True
Else
Rows("66:70").Hidden = False
End If
End If
End Sub


Anzeige
AW: Zeilen ausblenden nach Klick OptionButto
17.03.2021 10:40:10
Kristina
Ich glaub es nicht! Danke es funktioniert! und dann auch noch so einfach! ich wusste es gibt eine Lösung! Danke Danke Danke!!!

gern, danke für die rückmeldung o.w.T
17.03.2021 11:13:07
ralf_b
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zeilen Ausblenden in Excel Mit einem Button-Klick


Schritt-für-Schritt-Anleitung

Um Zeilen in Excel mithilfe von OptionButtons auszublenden oder anzuzeigen, folge diesen Schritten:

  1. Erstelle die OptionButtons:

    • Gehe zu den Entwicklertools und füge drei OptionButtons (z.B. OptionButton50, OptionButton51, OptionButton52) zu deiner Tabelle hinzu.
  2. Zellverknüpfung herstellen:

    • Verknüpfe die OptionButtons mit einer Zelle, z.B. L34. Wenn du OptionButton50 auswählst, wird in L34 der Wert 1 angezeigt, bei OptionButton51 der Wert 2 und bei OptionButton52 der Wert 3.
  3. VBA-Code hinzufügen:

    • Öffne den VBA-Editor (Alt + F11) und erstelle einen neuen Code im Codemodul von Tabelle1. Füge folgenden Code ein:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(0, 0) = "L34" Then
        If Range("L34").Value = 2 Then
            Rows("66:70").Hidden = False ' Zeilen einblenden
        Else
            Rows("66:70").Hidden = True ' Zeilen ausblenden
        End If
    End If
End Sub
  1. Makros für die OptionButtons:
    • Füge im Modul1 die folgenden Subroutinen hinzu:
Sub OptionButton51_Click()
    Range("L34").Value = 2
End Sub

Sub OptionButton50_Click()
    Range("L34").Value = 1
End Sub

Sub OptionButton52_Click()
    Range("L34").Value = 3
End Sub
  1. Teste die Funktion:
    • Klicke auf die OptionButtons und beobachte, wie sich die Zeilen 66 bis 70 entsprechend ein- oder ausblenden.

Häufige Fehler und Lösungen

  • Problem: Die Zeilen werden nicht ausgeblendet.

    • Lösung: Überprüfe, ob die Zellverknüpfung korrekt eingerichtet ist und ob der VBA-Code im richtigen Modul eingefügt wurde.
  • Problem: Der Code reagiert nur nach Drücken der Enter-Taste.

    • Lösung: Stelle sicher, dass der Code im Worksheet_Change Event korrekt auf die Zelle verweist, die sich ändert.

Alternative Methoden

Eine alternative Methode, um Zeilen auszublenden, ist die Verwendung von Schaltflächen anstelle von OptionButtons. Du kannst eine Schaltfläche (Button) hinzufügen und den folgenden VBA-Code verwenden:

Private Sub CommandButton1_Click()
    Rows("66:70").Hidden = Not Rows("66:70").Hidden ' Umschalten der Sichtbarkeit
End Sub

Praktische Beispiele

  1. Beispiel für das Ausblenden von Zeilen:

    • Verwende die oben genannten Codes, um Zeilen 66 bis 70 auszublenden, wenn ein bestimmtes OptionButton ausgewählt ist.
  2. Zellen aufklappen bei Klick:

    • Du kannst auch Zellen aufklappen, indem du den Code änderst, um nur bestimmte Zellen anzuzeigen oder auszublenden, anstatt ganze Zeilen.

Tipps für Profis

  • Verwende Namensbereiche: Wenn du mit vielen Zeilen arbeitest, kannst du Namensbereiche für eine bessere Lesbarkeit und Wartbarkeit deines Codes verwenden.

  • Fehlerbehandlung: Füge Fehlerbehandlungsroutinen in deinen VBA-Code ein, um unerwartete Probleme zu vermeiden.


FAQ: Häufige Fragen

1. Frage
Wie kann ich mehrere Zeilen gleichzeitig ausblenden?
Du kannst mehrere Zeilen in einer einzigen Zeile angeben: Rows("66:70").Hidden = True.

2. Frage
Was tun, wenn die OptionButtons nicht funktionieren?
Überprüfe, ob die OptionButtons korrekt mit der Zelle verknüpft sind und ob der VBA-Code im richtigen Modul eingefügt wurde.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige