Live-Forum - Die aktuellen Beiträge
Datum
Titel
23.04.2024 14:59:21
23.04.2024 14:47:39
23.04.2024 14:23:45
Anzeige
Archiv - Navigation
1048to1052
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

10 Checkboxen

10 Checkboxen
10.02.2009 19:05:02
Jörg
Hallo an alle
ich hätte da 10 Checkboxen (an anderer Stelle nochmal 20), die man anklicken soll, um Dinge zu sehen bzw. Überflüssiges auszublenden. Im Pinzip geht das so:

Private Sub ChBx1_Click()
If ChBx1.Value = True Then
Range("Musterzelle1").EntireRow.Hidden = False
Else
Range("Musterzelle1").EntireRow.Hidden = True
End If
End Sub



Private Sub ChBx2_Click()
If ChBx2.Value = True Then
Range("Musterzelle2").EntireRow.Hidden = False
Else
Range("Musterzelle2").EntireRow.Hidden = True
End If
End Sub


usw.....
Die Boxen heißen alle unterschiedlich (also sie sind durchnumeriert) und lösen etwas aus in einem Bereich, der analog durchnumeriert ist.
Gibt es einen Weg, das zu vereinfachen? Also nur einmal einen Rumpf schreiben oder so? Es ist ja keine Schleife, die hochgezählt werden kann - wenn Box 5 betätigt wird, muß der Code eben wissen, daß nur im Bereich 5 was passieren soll.
Danke für Eure Ideen...
Jörg

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

Betreff
Datum
Anwender
Anzeige
AW: 10 Checkboxen
10.02.2009 19:25:44
Heinz
Hi,
Suchbegriff Klassenmodul, siehe Recherche
mfg Heinz
und noch was...
10.02.2009 19:27:47
Heinz
Hi,
so ist es kürzer

Private Sub ChBx1_Click()
Range("Musterzelle1").EntireRow.Hidden = Not ChBx1
End Sub


mfg Heinz

AW: 10 Checkboxen
10.02.2009 21:28:45
Daniel
Hi
statt der 10 Checkboxen kannst du auch, wenn es das Design deiner Anwendung zulässt, eine Listbox verwenden, die du per Multi-Select und ListStyle = fmListStyleOption in eine Ansammlung von Checkboxen verwandeln kannst.
Da es nur ein Steuerelement ist, ist die Programmierung wesentlich einfacher und du kannst auf Klassenmodule verzichten.
die Abfrage könnte dann in etwa so aussehen (sinngemäss für dein Beispiel unter der Annahme, die Rangebezeichnungen "Musterzelle1" und "Musterzelle2" wären Werte der Listbox)

with Listbox1
for i = 0 to .ListCount
Range(.list(i,0)).entirerow.hidden = not .selected(i)
next
end with


Gruß, Daniel

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige