Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
816to820
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
816to820
816to820
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Label gruppieren für Ereignis

Label gruppieren für Ereignis
08.11.2006 19:38:36
Matthias
Hallo zusammen!
Kennt jemand eine Möglichkeit mehrere Label in einer UserForm zu "gruppieren" und dann durch ein Ereignis ein- bzw. ausblenden zu lassen?
Die Einzelbenennung jedes Labels ist sehr aufwendig.
Danke für eure Tips!
Matthias

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Label gruppieren für Ereignis
08.11.2006 19:58:54
Werner
Hallo Matthias,
Sprich die Label doch in einer Schleife an!

Private Sub CommandButton1_Click()
Dim i%
For i = 1 To 3
If Me.Controls("Label" & i).Visible = True Then
Me.Controls("Label" & i).Visible = False
Else
Me.Controls("Label" & i).Visible = True
End If
Next
End Sub

Gruss Werner
AW: Label gruppieren für Ereignis
08.11.2006 20:02:28
Matthias
Würde ich ja. Die sind aber verstreut über die UserForm...
AW: Label gruppieren für Ereignis
08.11.2006 20:20:52
fcs
Hallo Mathias,
ein Gruppierung z.B. durch Rahmen ist nicht möglich.
Du kannst aber durch sytematische Namen (Änderbar unter Eigenschaften bei der Erstellung des Userforms) für die Labels dafür sorgen, dass du die Eigenschaften der Labels in Schleifen ändern kannst.
Die Systematik für die Gruppierung sieht so aus, dass die 1. Zeichen der Labels identisch sind gefolgt von einer je nach Anzahl der Labels 1 oder 2 stellige Zählziffer
Beispiel: Labelnamen: lblName01, lblName02, lblName03, lblName04, usw.
Der code für das Umschalten (hier per Togglebutton) der Sichtbarkeit der Labels sieht dann z.B. so aus:

Private Sub ToggleButton1_Click()
Dim Element As Control
If Me.ToggleButton1.Value = True Then
Me.ToggleButton1.Caption = "Labels EIN"
For Each Element In UserForm1.Controls
If Left(Element.Name, 7) = "lblName" Then
Element.Visible = False
End If
Next
Else
Me.ToggleButton1.Caption = "Labels AUS"
For Each Element In UserForm1.Controls
If Left(Element.Name, 7) = "lblName" Then
Element.Visible = True
End If
Next
End If
End Sub

In ähnlicher Weise kann man die Eigenschaften solcher systematisch benannter Control-Elemente setzen/abfragen indem man den Namen und die Zählnummer in einer For-Next-Schleife generiert.

Private Sub CB_LabelsEin_Click()
For I = 1 To 5
UserForm1.Controls("lblName" & Format(I, "00")).Visible = True
Next
End Sub
Private Sub CB_LabelsAus_Click()
For I = 1 To 5
UserForm1.Controls("lblName" & Format(I, "00")).Visible = False
Next
End Sub

Gruss
Franz
Anzeige
AW: Label gruppieren für Ereignis
09.11.2006 00:20:22
Matthias
Danke Franz!
Nach den ersten Tests scheint das zu funktionieren. Werde es morgen ausgiebig versuchen und das Ergebnis ggf. nochmal posten.
Gruß, Matthias

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige