Hallo,
also der Ansatz mit der neuen Klasse ist ja schon nicht schlecht.
Ich würde das auch so angehen.
also für Jeden Fall bzw. Textbox-Bereich eine Klasse anlegen, und dort den entsprechenden Code hinterlegen.
Dann würde ich bei den Textboxen die Eigenschaft "Tag" verwenden.
Dies ist eine "Freie" Eigenschaft, die vom Entwickler genutzt werden kann.
Markiere also alle Textboxen von einem Bereich und trage bei der Eigenschaft "Tag" eine eindeutige Kennung ein. (Als banales Beispiel "Bereich01")
In der Userform musst du dann nur nach diesem "Tag" sortieren.
(das ist jetzt nicht getestet sondern nur kopiert und umgeschrieben)
Private Sub UserForm_Initialize()
For Each ctrl In Controls
If TypeName(ctrl) = "TextBox" Then
Select Case ctrl.Tag
Case "Bereich01"
tbxcoll.Add New Klasse1
Set tbxcoll(tbxcoll.Count).tbx = ctrl
Case "Bereich02"
tbxcoll.Add New Klasse2
Set tbxcoll(tbxcoll.Count).tbx = ctrl
End Select
End If
Next ctrl
End Sub
|