Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: "alle" Togglebutton auf False setzen

"alle" Togglebutton auf False setzen
30.05.2018 11:31:00
Tim
Hallo zusammen,
ich bin auf der Suche nach einem Makro, welches mir alle Togglebutton in meiner Userform auf false setzt, ohne dass ich jeden Button einzeln ansprechen muss.
Wer kann mir helfen?
Wenn ich dieses Makro erweitere geht es nicht:
For Each objControl In Controls
Select Case TypeName(objControl)
Case "TextBox"
objControl.Text = ""
Case "ComboBox"
objControl.ListIndex = -1
Case "CheckBox"
objControl.Value = False
Case "OptionButton"
objControl.Value = False
End Select
Next
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Definiere: Geht es nicht! (owT)
30.05.2018 11:37:05
EtoPHG

AW: "alle" Togglebutton auf False setzen
30.05.2018 11:37:49
Daniel
Hi
wie hast du dieses Makro denn erweitert?
bei mir funktioniert es, wenn ich es erweitere problemlos.
btw, du kannst dein Select Case kürzen und für alle Controls, die die gleiche Aktion benötigen, eine Zeile verwenden:
For Each objControl In Controls
Select Case TypeName(objControl)
Case "TextBox"
objControl.Text = ""
Case "ComboBox"
objControl.ListIndex = -1
Case "CheckBox", "OptionButton"
objControl.Value = False
End Select
Next
dann musst du nur den TypeName von Togglebuttons ("ToggleButton") an der entsprechenden Stelle ergänzen.
Gruß Daniel
Next
Anzeige
AW: "alle" Togglebutton auf False setzen
30.05.2018 11:42:31
Matthias
Hallo
Dim objControl As Control
For Each objControl In Me.Controls
Select Case TypeName(objControl)
Case "ToggleButton"
objControl.Value = False
'...
End Select
Next
Wobei Me hier Dein UserForm ist.
Hinterlege den Code auf ein CommandButton auf Deinem UserForm
Gruß Matthias
Anzeige
AW: "alle" Togglebutton auf False setzen
30.05.2018 12:24:07
Tim
Ahhh, Fehler gefunden, ich wollte das Makro auch über einen ToggleButton steuern.... Habe es durch ein Optionsfeld ersetzt.
Danke euch!
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Alle Togglebuttons in Excel auf False setzen


Schritt-für-Schritt-Anleitung

Um alle Togglebuttons in Deiner Userform auf False zu setzen, kannst Du ein VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und wechsle in den VBA-Editor (drücke ALT + F11).

  2. Füge eine Userform hinzu, falls noch nicht vorhanden.

  3. Klicke mit der rechten Maustaste auf die Userform und wähle "Code anzeigen".

  4. Füge den folgenden Code in das Code-Fenster ein:

    Dim objControl As Control
    For Each objControl In Me.Controls
       Select Case TypeName(objControl)
           Case "ToggleButton"
               objControl.Value = False
       End Select
    Next
  5. Verknüpfe den Code mit einem CommandButton oder einer anderen Steuerung, um das Makro auszuführen.


Häufige Fehler und Lösungen

  • Fehler: Das Makro funktioniert nicht, wenn es über einen ToggleButton gesteuert wird.

    • Lösung: Ändere die Steuerung auf ein Optionsfeld oder einen CommandButton, um Konflikte zu vermeiden.
  • Fehler: Es werden nicht alle Togglebuttons zurückgesetzt.

    • Lösung: Stelle sicher, dass Du im korrekten Kontext (z.B. Me.Controls) arbeitest und dass die Togglebuttons korrekt benannt sind.

Alternative Methoden

Falls Du eine andere Methode bevorzugst, kannst Du eine verkürzte Version des Codes verwenden, die für mehrere Control-Typen gleichzeitig funktioniert:

For Each objControl In Me.Controls
    Select Case TypeName(objControl)
        Case "CheckBox", "OptionButton", "ToggleButton"
            objControl.Value = False
    End Select
Next

Diese Methode ermöglicht es Dir, alle drei Typen gleichzeitig zurückzusetzen.


Praktische Beispiele

Angenommen, Du hast eine Userform mit mehreren Togglebuttons, die bei einem Button-Klick zurückgesetzt werden sollen. Hier ist ein Beispiel:

Private Sub CommandButton1_Click()
    Dim objControl As Control
    For Each objControl In Me.Controls
        If TypeName(objControl) = "ToggleButton" Then
            objControl.Value = False
        End If
    Next
End Sub

Dieses Makro wird beim Klicken auf CommandButton1 ausgeführt und setzt alle Togglebuttons zurück.


Tipps für Profis

  • Nutze die Möglichkeit, den Code weiter zu optimieren, indem Du eine Funktion erstellst, die Du bei Bedarf aufrufen kannst.
  • Halte Deinen Code sauber und dokumentiere ihn, um die Wartung zu erleichtern.
  • Experimentiere mit der Benutzeroberfläche, um verschiedene Steuerelemente zu kombinieren und ihre Funktionalität zu optimieren.

FAQ: Häufige Fragen

1. Wie füge ich einen ToggleButton zu meiner Userform hinzu?
Du kannst einen ToggleButton über die Toolbox im VBA-Editor hinzufügen. Klicke einfach auf das ToggleButton-Symbol und ziehe es in die Userform.

2. Kann ich das Makro auch für andere Steuerelemente verwenden?
Ja, Du kannst den Code anpassen, um auch andere Steuerelemente wie CheckBoxen oder OptionButtons zurückzusetzen. Achte darauf, die entsprechenden Typen im Select Case-Block hinzuzufügen.

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