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

Forumthread: CheckBox mit Variable

CheckBox mit Variable
24.05.2005 10:23:38
helena
Hallo
Ich habe in einer UserForm 50 CheckBoxen. Mit einer Schleife würde ich gerne überprüfen ob diese auf „True“ gesetzt wurden oder nicht. Wie kann ich die CheckBoxen mit einer Variable verbinden?
Also so etwas wie:
For i=1 to 50
If CheckBox(i).Value=”True” then ‘das funktioniert nicht
…
End if
Next i
Ich wäre sehr dankbar, wenn mit jemand helfen könnte.
Helena
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: CheckBox mit Variable
24.05.2005 10:37:07
Heiko
Hallo Helena,
If Me.Controls("CheckBox" & CStr(i)).Value = True Then
End if
Gruß Heiko

PS: Rückmeldung wäre nett !
AW: CheckBox mit Variable
24.05.2005 10:53:54
helena
Hallo habe es mit Me.Controls() versucht, es funktioniert!!!
Vielen Dank!
AW: CheckBox mit Variable
24.05.2005 10:38:28
roland_k
hi
versuchmal
checkbox.enabled = true
bin abe nicht sicher
gruss roland_k
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Überprüfung von CheckBoxen in einer UserForm mit Variablen


Schritt-für-Schritt-Anleitung

Um die Werte von CheckBoxen in einer UserForm zu überprüfen, kannst Du eine Schleife verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Deine UserForm in Excel.
  2. Füge 50 CheckBoxen hinzu und benenne sie entsprechend (z.B. CheckBox1, CheckBox2, ... CheckBox50).
  3. Füge einen CommandButton hinzu, um die Überprüfung zu starten.
  4. Verwende folgenden VBA-Code im Code-Editor Deiner UserForm:
Private Sub CommandButton1_Click()
    Dim i As Integer
    For i = 1 To 50
        If Me.Controls("CheckBox" & CStr(i)).Value = True Then
            ' Hier kannst Du die Aktion für die aktivierte CheckBox einfügen
            Debug.Print "CheckBox" & i & " ist aktiviert."
        End If
    Next i
End Sub
  1. Schließe den Code-Editor und teste Deine UserForm.

Häufige Fehler und Lösungen

  • Fehler: "Objekt nicht gefunden"
    Lösung: Stelle sicher, dass alle CheckBoxen korrekt benannt sind. Der Code erwartet die Benennung im Format CheckBox1, CheckBox2 usw.

  • Fehler: CheckBox funktioniert nicht wie erwartet
    Lösung: Prüfe, ob die CheckBoxen aktiviert sind. Du kannst die Eigenschaft Enabled verwenden, um sicherzustellen, dass die CheckBoxen tatsächlich interagierbar sind.

Me.Controls("CheckBox" & CStr(i)).Enabled = True

Alternative Methoden

Es gibt verschiedene Ansätze zur Überprüfung von CheckBoxen:

  1. Einzeln überprüfen: Du kannst jede CheckBox einzeln ansprechen, was jedoch unpraktisch ist, wenn Du viele CheckBoxen hast.
  2. Array verwenden: Du könntest die Werte in einem Array speichern und dann die Überprüfung durchführen.
Dim checkBoxArray(1 To 50) As Boolean
For i = 1 To 50
    checkBoxArray(i) = Me.Controls("CheckBox" & CStr(i)).Value
Next i

Praktische Beispiele

Hier ist ein praktisches Beispiel, das zeigt, wie Du die aktivierten CheckBoxen zählen kannst:

Private Sub CommandButton1_Click()
    Dim i As Integer
    Dim checkedCount As Integer
    checkedCount = 0

    For i = 1 To 50
        If Me.Controls("CheckBox" & CStr(i)).Value = True Then
            checkedCount = checkedCount + 1
        End If
    Next i

    MsgBox "Anzahl der aktivierten CheckBoxen: " & checkedCount
End Sub

Tipps für Profis

  • Verwende With...End With, um den Code für die Kontrolle der CheckBoxen zu optimieren und lesbarer zu gestalten.
  • Stelle sicher, dass Du den Code regelmäßig testest, insbesondere wenn Du Änderungen vornimmst.
  • Nutze Debug.Print, um den Status der CheckBoxen während der Ausführung zu überwachen.

FAQ: Häufige Fragen

1. Wie kann ich die CheckBoxen in einer bestimmten Reihenfolge abfragen?
Du kannst die Schleife entsprechend anpassen, um spezifische CheckBoxen in der gewünschten Reihenfolge abzufragen.

2. Was passiert, wenn ich weniger oder mehr als 50 CheckBoxen habe?
Der Code muss entsprechend angepasst werden, um die tatsächliche Anzahl der CheckBoxen in der UserForm zu berücksichtigen. Ändere die Schleifenbedingung in For i = 1 To [Anzahl der CheckBoxen].

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