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

Codezeilen sparen

Codezeilen sparen
26.06.2008 12:23:00
Richard
Hallo,
ich möchte gerne Codezeilen sparen, und habe folgendes Problem: Auf einer UserForm habe ich sehr viele Labels, aber alle sind nur in 2 Kategorien zugeordnet. Jede dieser beiden Kategorien soll unterschiedliche Eingenschaften haben.
Ungefär so stelle ich mir das vor:

With Label1, Label8, Label9, Label13
.BackColor = &H8000000F
.ForeColor = &H80000012
End With
With Label2, Label 3, Label4, Label5, Label6, Label7, Label10, Label11, Label12
.BackColor = &H8000000D
.ForeColor = &H8000000E
End With


Das das natürlich, so wie ich es in dem Beispiel aufgeschrieben nicht geht, weiß ich schon.
Kennt jemand 'ne Lösung?
Mfg
Richard

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Codezeilen sparen
26.06.2008 12:35:00
Richard
Hallo Hajo,
was stimmt denn nicht mit meinem Level?

AW: Codezeilen sparen
26.06.2008 12:41:00
Hajo_Zi
Hallo Richard,
mir war nur schleierhaft ob Du den Code im Beispiel verstehst.
Gruß Hajo

AW: Codezeilen sparen
26.06.2008 12:50:00
Richard
Hallo,
da kannst du recht haben, leider gibt es bei der Levelauswahl nicht "Excel gut - VBA absoluter greenhorn". Ich habe auch schon bemerkt, dass meine bisherigen Fragen meistens doch etwas komplexer waren, als ich dachte und ich tu mich schon manchmal sehr schwer mit den Code's, die mir so gegeben wurden.
Aber danke trotzdem!
MfG
Richard

Anzeige
AW: Codezeilen sparen
26.06.2008 12:34:22
Rudi
Hallo,
eine Möglichkeit:

Sub tt()
Dim arrLabels1, arrLabels2, i As Integer
For i = 0 To 13
With Me.Controls("Label" & i)
Select Case i
Case 1, 8, 9, 13
.BackColor = &H8000000F
.ForeColor = &H80000012
Case 2 To 7, 10 To 12
.BackColor = &H8000000D
.ForeColor = &H8000000E
End Select
End With
Next i
End Sub


Gruß
Rudi

AW: Codezeilen sparen mit New Collection
27.06.2008 00:53:00
Daniel
Hi
wenn du diese Gruppierungen öfters benötigst und die Gruppen immer gleich sind, könntest du die Labels auch in einer NEW COLLECTION zusammenfassen und diese dann bearbeiten:

Private Sub UserForm_Click()
Dim Gruppe1 As New Collection
Dim Gruppe2 As New Collection
Dim Gruppenelement
With Gruppe1
.Add Label1
.Add Label2
.Add Label3
.Add Label4
End With
With Gruppe2
.Add Label5
.Add Label6
.Add Label7
.Add Label8
End With
For Each Gruppenelement In Gruppe1
Gruppenelement.BackColor = &H8000000F
Gruppenelement.ForeColor = &H80000012
Next
For Each Gruppenelement In Gruppe2
Gruppenelement.BackColor = &H8000000D
Gruppenelement.ForeColor = &H8000000E
Next
End Sub


Gruß, Daniel

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige