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

Checkboxen zählen

Forumthread: Checkboxen zählen

Checkboxen zählen
10.11.2005 23:08:36
Tyler
Hallo,
ich suche eine Lösung zum Zählen von angeklickten Steuerelementen-Toolbox Checkboxen. Ich habe schon mehrere Internet seiten durchsucht, aber nichts Richtiges gefunden.
Hier waren 2 Ansätze:
1. Ansatz

Private Sub CommandButton1_Click()
WT = 0
Dim a As Integer
For a = 1 To 2
If CheckBox(a).Enabled = True Then
WT = WT + 1
Else
WT = WT
Next a
Range("A1").Value = WT
End Sub

Fehlermeldung bei "If Checkbox(a).Enabled ..."
2. Ansatz

Private Sub CommandButton1_Click()
WT = 0
If CheckBox1.Value = True Then
WT = WT + 1
Else
If CheckBox2.Value = True Then
WT = WT + 1
Else
WT = WT
End If
Range("A1").Value = WT
End Sub

Ausgabe ist nicht korrekt. Z.B. Wenn man nur die 2. Checkbox anklickt.
Ich bin für jede Hilfe dankbar.
Ciao,
Tyler
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Checkboxen zählen
11.11.2005 00:14:11
Matthias
Hallo Tyler,
das ganze auf einem Tabellenblatt, oder?

Private Sub CommandButton1_Click()
Dim zähler As Integer
Dim obj As OLEObject
For Each obj In Me.OLEObjects
If TypeName(obj.Object) = "CheckBox" And obj.Object.Value = True Then
zähler = zähler + 1
End If
Next
MsgBox zähler & " Checkboxen sind angeklickt."
End Sub

Gruß Matthias
Anzeige
AW: Checkboxen zählen
11.11.2005 08:02:08
Unbekannter
So spricht man die Steuerelemente auf einer Userform in einer Schleife an.
if controls("checkbox" & a).enabled=true then
Gruß UN1
AW: Checkboxen zählen
13.11.2005 00:33:05
Tyler
Hallo Matthias G & Unbekannter Nummer Eins,
danke für eure Hilfe. Die Checkboxen sind alle auf einem Tabellenblatt und ich muss diese direkt ansprechen, am besten durch eine oder mehrere Schleifen.
Wenn man "If Controls("checkbox" & a).Enabled = True Then" nutzt kommt eine Fehlermeldung
"Falsche Anzahl an Argumenten oder ungültige Zuweisung zu einer Eigenschaft"
Muss ich den Befehl "Controls" irgendwo erst definieren.
Hier wäre jetzt der neueste Stand des Makros. Bitte schreibt mir wie das Makro vollständig auszusehen hat.
Vielen Dank!
Ciao,
Rico

Private Sub CommandButton1_Click()
Dim a As Integer
WT = 0
For a = 1 To 2
If Controls("checkbox" & a).Enabled = True Then
WT = WT + 1
Else
WT = WT
Next a
Range("A1").Value = WT
End Sub

Anzeige
;
Anzeige

Infobox / Tutorial

Checkboxen in Excel zählen: So klappt's


Schritt-für-Schritt-Anleitung

Um die Anzahl der angeklickten Checkboxen in Excel zu zählen, kannst Du das folgende VBA-Makro verwenden. Die Checkboxen sollten sich auf einem Arbeitsblatt befinden. Hier ist ein einfaches Beispiel:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Füge ein neues Modul hinzu (Rechtsklick auf "VBAProject" > Einfügen > Modul).
  3. Kopiere den folgenden Code in das Modul:
Private Sub CommandButton1_Click()
    Dim zähler As Integer
    Dim obj As OLEObject
    For Each obj In Me.OLEObjects
        If TypeName(obj.Object) = "CheckBox" And obj.Object.Value = True Then
            zähler = zähler + 1
        End If
    Next
    MsgBox zähler & " Checkboxen sind angeklickt."
End Sub
  1. Füge einen Button auf Dein Arbeitsblatt ein, um das Makro zu starten.
  2. Klicke auf den Button, um die Anzahl der angeklickten Kontrollkästchen zu sehen.

Häufige Fehler und Lösungen

  • Fehlermeldung bei If Checkbox(a).Enabled: Achte darauf, dass die Checkboxen korrekt benannt sind. Der Name muss genau mit dem übereinstimmen, was Du im Code verwendest.

  • Ausgabe ist nicht korrekt: Wenn Du nur eine Checkbox anklickst und nicht die erwartete Anzahl erhältst, überprüfe, ob die Checkbox wirklich aktiv ist. Möglicherweise sind die Checkboxen nicht richtig konfiguriert.


Alternative Methoden

Wenn Du eine einfachere Methode zum Zählen von Checkboxen verwenden möchtest, kannst Du die ZÄHLENWENN-Funktion in Excel nutzen. Hierzu musst Du sicherstellen, dass die Checkboxen mit Zellen verknüpft sind.

  1. Klicke mit der rechten Maustaste auf die Checkbox und wähle "Steuerelement formatieren".
  2. Gehe zum Tab "Steuerung" und wähle eine Zelle aus, um die Checkbox mit dieser Zelle zu verknüpfen.
  3. Verwende die folgende Formel, um die Checkboxen zu zählen:
=ZÄHLENWENN(A1:A10; WAHR)

Hierbei steht A1:A10 für den Bereich der Zellen, die mit den Checkboxen verknüpft sind.


Praktische Beispiele

Hier sind einige praktische Beispiele für das Zählen von Checkboxen in Excel:

  1. Zählen von zwei Checkboxen auf einem Blatt:

    Private Sub CommandButton1_Click()
       Dim WT As Integer
       WT = 0
       If CheckBox1.Value = True Then WT = WT + 1
       If CheckBox2.Value = True Then WT = WT + 1
       Range("A1").Value = WT
    End Sub
  2. Zählen von Checkboxen in einer Schleife:

    Private Sub CommandButton1_Click()
       Dim WT As Integer
       Dim a As Integer
       WT = 0
       For a = 1 To 10
           If Controls("CheckBox" & a).Value = True Then WT = WT + 1
       Next a
       Range("A1").Value = WT
    End Sub

Tipps für Profis

  • Verwende klare und konsistente Namen für Deine Kontrollkästchen, um Verwirrung zu vermeiden.
  • Nutze Schleifen, um mehrere Checkboxen effizient zu zählen. Dies spart Zeit und macht den Code übersichtlicher.
  • Teste den Code regelmäßig, um sicherzustellen, dass die Ausgabe korrekt ist und keine Fehler auftreten.

FAQ: Häufige Fragen

1. Wie kann ich die Anzahl der angeklickten Checkboxen in einer Userform zählen?
Verwende eine ähnliche Schleife wie im Arbeitsblatt und greife auf die Checkboxen über den Controls-Befehl zu.

2. Was mache ich, wenn meine Checkboxen nicht richtig funktionieren?
Überprüfe die Verknüpfungen der Checkboxen mit den Zellen und stelle sicher, dass die Namen korrekt sind.

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