Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1416to1420
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Kontrollkästchen

Kontrollkästchen
02.04.2015 08:59:14
Smithers
Guten Morgen.
Ich habe leider schon wieder ein Problemchen. Dieses mal geht es um die Kontrollkästchen, die sich auf meiner Userform befinden.
Und zwar möchte ich, dass von den 15 Kontrollkästchen höchstens drei ausgewählt werden können. Danach soll die Auswahl auf die Tabelle übertragen werden, jede Auswahl in eine von drei Zellen.
Es muss doch sicher einen Weg ohne dutzende von Ifs geben, oder ?
Schonmal vielen Dank für die Hilfe im Vorraus.
Grüße
Samu

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kontrollkästchen
02.04.2015 09:20:40
Oberschlumpf
Hi Samu
Schreib in ein allgemeines Modul diesen Code:
Sub sbChkBox()
Dim lctrChk As Control, liCounter As Integer
For Each lctrChk In userform1.Controls
If TypeName(lctrChk) = "CheckBox" Then
liCounter = liCounter + 1
End If
If liCounter > 3 Then
MsgBox "es dürfen nicht mehr als 3 Checkboxen ausgewählt werden", vbInformation, _
"Hinweis"
Exit For
End If
Next
End Sub

Schreib dann in jedes Klick-Ereignis einer CheckBox diese Codezeile:
sbChkBox

(damit wird der Code aus dem allgemeinen Modul nur aufgerufen)
Hilfts?
Wenn nicht, zeig uns ne Bsp-Datei mit Bsp-Daten.
Ciao
Thorsten

Anzeige
du zählst die Checkboxen!!!
02.04.2015 09:42:51
Rudi
Hallo,
und nicht nur die angehakten.

If TypeName(lctrChk) = "CheckBox" Then
 If lctrChk Then
liCounter = liCounter + 1
  end if
End If
Gruß
Rudi

AW: du zählst die Checkboxen!!!
02.04.2015 09:54:26
Luschi
Hallo Samu,
hier mal ein abgewandelten Beispiel von Hajo. Dabei wird in 1em Extra-Klassenmodul die Zählerei abgewickelt, und da ist es egal, wieviele Checkboxes es im Formular gibt, nur 3 Checkboxen können gleichzeitig aktiv sein!
https://www.herber.de/bbs/user/96820.xlsm
Gruß von Luschi
aus klein-Paris

Anzeige
AW: du zählst die Checkboxen!!!
02.04.2015 09:55:32
Smithers
Ich glaube ich lade am besten eine Beispieldatei hoch.
Denn für was sind denn hier die einzelnen Befehle, bzw was bewirken sie ?

AW: du zählst die Checkboxen!!!
02.04.2015 10:13:28
Smithers

Die Datei https://www.herber.de/bbs/user/96822.xlsm wurde aus Datenschutzgründen gelöscht


Hier mal eine, sehr einfach gehaltene, Beispieldatei.
Ich hoffe man kann damit was anfangen.

AW: du zählst die Checkboxen!!!
02.04.2015 10:43:07
Luschi
Hallo Smithers,
hier mal Dein Beispielzurück mit der Maßgabe, das im Formular insgesamt nur 3 Checkboxen gleichzeitig aktiv sein können. Den Sonderwunsch, je Formularspalte (was das auch immer sein soll) 3 Checkboxen aktivieren zu können, muß ich est mal testen.
https://www.herber.de/bbs/user/96823.xlsm
Gruß von Luschi
aus klein-Paris
PS: Versuche erst mal, dieses Beispiel zu verstehen und den Zusammenhang zwischen Formuular & Extra-Klassenmodul zu verstehen; denn hier spielt die Musik!

Anzeige
AW: du zählst die Checkboxen!!!
02.04.2015 13:43:45
Smithers
Hey Luschi,
vielen Dank erstmal.
Tatsächlich habe ich von einem Extra-Klassenmodul noch nie etwas gehört, ich bin wirklich totaler VBA-Anfänger.
Kannst du mir das mal ein bisschen genauer beschreiben ?
Sorry dass das mit den Spalten auf der Userform so unklar war, in meinem konkreten Fall sollen das Prüfung und Nacharbeit sein, also man soll drei Dinge auswählen können, die geprüft werden und drei Dinge die nachgearbeitet werden. Deshalb zwei "Spalten" auf der Userform.
Grüße
Samu

AW: du zählst die Checkboxen!!!
02.04.2015 17:56:52
Luschi
Hallo Samu,
hier die getrennte Zählunge der CheckBoxen.
https://www.herber.de/bbs/user/96853.xlsm
Gruß von Luschi
aus klein-Paris

Anzeige
AW: du zählst die Checkboxen!!!
07.04.2015 07:25:08
Smithers
Hallo again,
vielen Dank für die Hilfe, nachdem ich das in den Osterfeiertagen mal ausprobiert habe funktioniert es jetzt so wie es soll.
Wirklich eine tolle Unterstützung die man hier findet!
Grüße
Samu

AW: Kontrollkästchen
02.04.2015 09:49:34
Oberschlumpf
ups, Rudi hat recht :-)
Versuch es so:

Sub sbChkBox()
Dim lctrChk As Control, liCounter As Integer
For Each lctrChk In userform1.Controls
If TypeName(lctrChk) = "CheckBox" Then
If lctrChk.Value = 1 Then
liCounter = liCounter + 1
End If
End If
If liCounter > 3 Then
MsgBox "es dürfen nicht mehr als 3 Checkboxen ausgewählt werden",  _
vbInformation, "Hinweis"
Exit For
End If
Next
End Sub

Na ja, das kann passieren, wenn gar keine Bsp-Datei vorhanden ist :-)
Hilfts denn?
Ciao
Thorsten
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige