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

Forumthread: Checkbox leeren

Checkbox leeren
Mike
Hallo Ex(cel)perten,
nach dem erfassen von Daten über eine Userform möchte ich die Checkboxen, die mir auf der Userform die Eingabe erleichtern, wieder löschen/leeren.
Wie lautet die VBA-Anweisung für diesen Vorgang?
Danke und Gruß aus Bayern
Mike
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Checkbox leeren
11.11.2010 14:03:40
Hajo_Zi
Hallo Mike,
Checkbox1.value=false

AW: Checkbox leeren
11.11.2010 14:08:21
Mike
Danke, aber ich habe mehrere(25) Checkboxen die alle verschiedene Namen habe.
Die möchte ich jetzt nicht jede einzeln mit Hamburg, München, etc. ansprechen sondern als Ganzes.
Hoffe auf Hilfe!!!
DANKE
Mike
Anzeige
AW: Checkbox leeren
11.11.2010 14:10:31
Hajo_Zi
Hallo Mike,
Private Sub CMD_Leeren_Click()
Dim ObCb As Object
For Each ObCb In Me.Controls
If TypeName(ObCb) = "TextBox" Then
ObCb.Value = ""
ElseIf TypeName(ObCb) = "CheckBox" Then
ObCb.Value = False
ElseIf TypeName(ObCb) = "OptionButton" Then
ObCb.Value = False
End If
Next ObCb
End Sub
Gruß Hajo
Anzeige
AW: Checkbox leeren
11.11.2010 14:13:02
Mike
Hajo - Vielen Dank!!!
Gruß
Mike
;
Anzeige

Infobox / Tutorial

Checkboxen in Excel Userform leeren


Schritt-für-Schritt-Anleitung

Um alle Checkboxen in einer Excel Userform zu leeren, kannst Du den folgenden VBA-Code verwenden. Dieser Code durchläuft alle Steuerelemente der Userform und setzt die Checkboxen auf False.

  1. Öffne die Userform in Excel, in der Du die Checkboxen leeren möchtest.
  2. Gehe zu den Eigenschaften der Userform und klicke auf "Code anzeigen".
  3. Füge den folgenden Code in das Codefenster ein:
Private Sub CMD_Leeren_Click()
    Dim ObCb As Object
    For Each ObCb In Me.Controls
        If TypeName(ObCb) = "TextBox" Then
            ObCb.Value = ""
        ElseIf TypeName(ObCb) = "CheckBox" Then
            ObCb.Value = False
        ElseIf TypeName(ObCb) = "OptionButton" Then
            ObCb.Value = False
        End If
    Next ObCb
End Sub
  1. Speichere Deine Änderungen und schließe den Code-Editor.
  2. Füge einen Button (z.B. "Leeren") zu Deiner Userform hinzu und verknüpfe diesen mit dem CMD_Leeren_Click-Ereignis.

Jetzt kannst Du alle Checkboxen in der Userform auf einmal leeren, ohne sie einzeln ansprechen zu müssen.


Häufige Fehler und Lösungen

  • Fehler: Checkboxen werden nicht geleert.

    • Lösung: Stelle sicher, dass der Button korrekt mit dem CMD_Leeren_Click-Ereignis verknüpft ist.
  • Fehler: Der Code läuft nicht.

    • Lösung: Überprüfe, ob Du den Code im richtigen Modul eingefügt hast und dass die Userform aktiv ist.

Alternative Methoden

Falls Du eine alternative Methode zur Verwaltung von Checkboxen in Excel suchst, kannst Du auch die Verwendung einer Schleife in Kombination mit einer Array-Variable in Betracht ziehen. So kannst Du gezielt nur bestimmte Checkboxen leeren, wenn Du das benötigst.

Dim CheckboxesToClear As Variant
CheckboxesToClear = Array("CheckBox1", "CheckBox2", "CheckBox3") 'Füge hier die Namen der Checkboxen hinzu

Dim i As Integer
For i = LBound(CheckboxesToClear) To UBound(CheckboxesToClear)
    Me.Controls(CheckboxesToClear(i)).Value = False
Next i

Diese Methode ist nützlich, wenn Du nicht alle Checkboxen, sondern nur eine Auswahl zurücksetzen möchtest.


Praktische Beispiele

  1. Beispiel 1: Wenn Du eine Userform hast mit Checkboxen für verschiedene Städte (z.B. Hamburg, München), kannst Du den oben genannten Code verwenden, um alle Auswahlmöglichkeiten zurückzusetzen.

  2. Beispiel 2: In einer Umfrage, wo Teilnehmer Optionen auswählen können, ist es hilfreich, einen "Zurücksetzen"-Button zu haben, der alle Checkboxen auf False setzt.


Tipps für Profis

  • Verwende optionale Steuerelemente: Wenn Du die Userform für verschiedene Eingaben anpassen möchtest, kannst Du Steuerelemente dynamisch hinzufügen und entfernen, um die Benutzererfahrung zu verbessern.

  • Debugging: Nutze die Debugging-Tools in VBA, um Fehler zu finden, falls der Code nicht wie erwartet funktioniert. Setze Haltepunkte, um den Ablauf des Codes zu überprüfen.


FAQ: Häufige Fragen

1. Frage
Wie kann ich spezifische Checkboxen leeren, ohne alle zurückzusetzen?
Antwort: Du kannst das oben gezeigte Beispiel mit einer Array-Variable verwenden, um gezielt Checkboxen anzusprechen.

2. Frage
Funktioniert dieser Code auch in Excel 365?
Antwort: Ja, der VBA-Code ist kompatibel mit Excel 2016, 2019 und Excel 365. Achte darauf, dass Makros in deiner Excel-Anwendung aktiviert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige