Hallo Hermdaddy,
Auch gut. Selbstständig find ich immer super. Als Helfer kann man ja nur Optionen anbieten und aufzeigen, was wie möglich ist. Daher freut es mich immer wieder, wenn sich die Leute dann damit näher beschäftigen und sich dann zu einem persönlichen Weg entscheiden, mit dem sie am Besten klarkommen.
Eine winzige Kleinigkeit muss ich aber trotzdem noch anmeckern. Du durchläufst im obigen Beispiel sämtliche Controls im Userform insgesamt 9x von vorn bis hinten. Das kann u.U. beim Aufbau nervige Wartezeiten verursachen. Noch besser wäre es, wenn du die Schleife nur 1x durchläufst. Du kannst die If-Bedingungen auch innerhalb der Schleife abfragen:
For Each ctrl In Controls
If TypeName(ctrl) = "TextBox" Then
If Val(Right(ctrl.Name, 4)) >= 5131 And Val(Right(ctrl.Name, 4)) <= 5132 Then
tbxcoll.Add New Indexfehler1
Set tbxcoll(tbxcoll.Count).tbx = ctrl
ElseIf Val(Right(ctrl.Name, 4)) >= 5127 And Val(Right(ctrl.Name, 4)) <= 5128 Then
tbxcoll.Add New Hoehenfehler
Set tbxcoll(tbxcoll.Count).tbx = ctrl
'ElseIf usw.
End If
End If
Next ctrl
Gruß Mr. K.
|