Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
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

Formular mit Kontrollkästchen

Formular mit Kontrollkästchen
23.03.2015 09:36:24
puma_888
Hallo zusammen,
ich habe in einem Formular mehrere Kontrollkästchen die angeklickt werden können. Zusätzlich habe ich ein Kontrollkästchen über das ich beim anklicken alle Kontrollkästchen markieren möchte. Wie müsste der Code dafür aussehen um so etwas umzusetzen? Vielen Dank schon mal im voraus!
Gruß
Markus

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formular mit Kontrollkästchen
23.03.2015 09:45:32
Beverly
Hi Markus,
welche Kontrollkästchen - Formular-Stuerelemente oder ActiveX-Steeurelemente?


AW: Formular mit Kontrollkästchen
23.03.2015 10:02:07
puma_888
Hi Karin,
das Formular wird über eine ActiveX-Steuerelement (Befehlschaltfläche) in einer Excel Tabelle aufgerufen. Die Kontrollkästchen im Formular wurden über die Werkzeugsammlung Steuerelemente eingefügt, wobei hier nicht mehr zwischen Formular-Stuerelemente oder ActiveX-Steeurelemente unterschieden wird, also zumindest zeigt es mir bei Werkzeugsammlung einfach nur "Steuerelemente" an.
Ich hab bereits im Internet einen Code gefunden den ich für die Checkbox über die alle Kontrollkästchen markiert werden sollen eingegeben haben. Wenn ich das Formular dann aufrufe und das Kontrollkästchen markiere kommt allerdings die Fehlermeldung "Laufzeitfehler '400': Formular wird bereits angezeigt und kann daher nicht gebunden dargestellt werden"
Private Sub CheckBox26_Click()
Dim Box As OLEObject
If CheckBox26 = True Then
For Each Box In ActiveSheet.OLEObjects
Box.Object = True
Next Box
Else
For Each Box In ActiveSheet.OLEObjects
Box.Object = False
Next Box
End If
End Sub
Wäre super, wenn du mir helfen könntest :).
Gruß
Markus

Anzeige
AW: Formular mit Kontrollkästchen
23.03.2015 10:25:18
puma_888
Noch eine Anmerkung die Befehlschaltfläche die in meine Excel Tabelle integriert ist und worüber ich durch klicken das Formular öffne wurden mit dem Code "UserForm1.Show" versehen. Wenn ich nun das Formular geöffnet habe und das Kontrollkästchen anklicken möchte, über das alle Kontrollkästchen markiert werden sollen, kommt der bereits erwähnte Laufzeitfehler 400. Wenn ich dann auf Debuggen draufklick, werde ich zum Code "UserForm1.Show" weitergeleitet und soll dort irgendetwas verändern. Nur leider weis ich nicht was ich machen soll.
Gruß
Markus

AW: Formular mit Kontrollkästchen
23.03.2015 11:10:34
Beverly
Hi Markus,
mit "Formular" meinst du wohl ein UserForm? Da gibt es natürlich keine Formular-Steuerelemente. Mit deinem geposteten Code beziehst du dich aber wiederum auf ActiveX-Stuereelemente im Tabellenblatt.
Eine hochgeladene Mappe wäre sehr hilfreich.


Anzeige
AW: Formular mit Kontrollkästchen
23.03.2015 11:30:51
puma_888
Hallo Karin,
anbei meine Tabelle, wie gesagt möchte ich durch das klicken der Befehlschaltfläche "Produkte vergleichen" über eine UserForm auswählen welche zwei Produkte ich vergleichen möchte und welche Kriterien ich für diesen Vergleich heranziehen möchte. Da es viele Kriterien gibt, möchte ich die Möglichkeit haben über das Kontrollkästchen "Alle" alle Kästchen zu markieren. Mit dem momentan hinterlegten Code kommt aber immer eine Fehlermeldung, die ich dir bereits schon beschrieben hatte. Vllt. hilft dir ja meine Tabelle weiter, danke :).
https://www.herber.de/bbs/user/96573.xls
Gruß
Markus

Anzeige
AW: Formular mit Kontrollkästchen
23.03.2015 12:33:40
Beverly
Hi Markus,
das geht ganz einfach:
Private Sub CheckBox26_Click()
Dim bytZaehler As Byte
If CheckBox26 Then
For bytZaehler = 1 To 22
Me.Controls("CheckBox" & bytZaehler) = True
Next bytZaehler
End If
End Sub

Wie schon geschrieben - dein Code bezieht sich auf ActiveX-Steuerelemente im Tabellenblatt und nicht auf einem UserForm.


AW: Formular mit Kontrollkästchen
23.03.2015 13:22:50
puma_888
Hi Karin,
vielen Dank, dein Code funktioniert einwandfrei. Ich habe allerdings noch eine weitere Frage an dich. Wenn das Kontrollkästchen angeklickt wird, dann werden momentan alle Kästchen angeklickt. Wie müsste ich den Code schreiben wenn ich möchte, dass wenn ich den Haken wieder beim Kontrollkästchen "alle" entferne, dass dann die Haken bei den anderen Kästchen ebenfalls entfernt werden. Ich hab es selbst schon versucht mit Else IF den Code fortzuführen aber irgendwie, kam ich zu keinem sinnvollen Ergebnis.
Ich hätte auch noch eine weitere Frage an dich. Den Produktvergleich, den ich hier durchführen möchte, umfasst einige Funktionen die das Programm etwas umfangreicher gestalten. Da meine VBA Kenntnisse jedoch nicht all zu gut sind, schau ich momentan halt, wie ich Schritt für Schritt die einzelnen Funktionen umsetzen kann. Ist das die richtige Herangehensweise oder dreh ich mir da beim Programmieren irgendwann selbst einen Strick daraus, weil ich nicht von Anfang an, gewisse Sachen berücksichtigt habe. Ich habe zwar die ganzen Einführungstutorial zu VBA angeschaut und mich auch schon etwas in die Literatur eingelesen, dennoch fällt es mir immer noch schwer für die einzelnen Funktionen selbst einen Code zu schreiben, sodass ich eigtl. immer nach einem passenden Code im Internet schaue und den versuch umzuschreiben, sodass er für mich passt.
Gruß
Markus

Anzeige
AW: Formular mit Kontrollkästchen
23.03.2015 13:48:37
Beverly
Hi Markus,
zu Frage 1:
Private Sub CheckBox26_Click()
Dim bytZaehler As Byte
For bytZaehler = 1 To 22
Me.Controls("CheckBox" & bytZaehler) = CheckBox26
Next bytZaehler
End Sub
Hiermit wird jede CheckBox auf dieselbe Einstellung gesetzt wie die CheckBox26-
Zu Frage 2: deine Vorgehensweise ist schon völlig korrekt. Du hast dir 1. klar gemacht, was du erreichen willst und hast 2. bereits die Methode ausgewählt (UserForm). Nun gilt es "nur noch", das UserForm sozusagen "mit Leben zu erfüllen" - dabei ist ein schrittweises Herangehen an die einzelnen Funktionalitäten immer sinnvoll.
Sicher ist es so, dass man im Laufe des Voranschreitens merkt, dass es noch Verbesserungen gibt und man so einiges am Code ändern kann/muss - aber das ist normal. ;-)


Anzeige
AW: Formular mit Kontrollkästchen
23.03.2015 14:21:57
puma_888
Danke :)

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige