ich bin bezüglich VBA-Programmierung totaler Laie.
Trotz dieser Schwäche habe ich es geschafft eine
größeres, benutzerdefiniertes Programm zu schreiben.
Bei den Textboxen komme ich jedoch immer wieder an meine Grenzen.
In meinem Programm sind nun ca. 200 Textboxen.
Nun stelle ich mir die Frage muss es immer so kompliziert sein.
Dies an einem Beispiel:
Beim Anklicken der Textbox wird die Farbe gelb, beim Verlassen wieder weiss.
Der Tausenderpunkt wird gesetzt, ebenfalls das EUR-Zeichen.
Private Sub textbox142_Enter()
TextBox142.BackColor = &H80FFFF
End Sub
Private Sub textbox142_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox142.BackColor = &H80000005
End Sub
Private Sub textbox142_AfterUpdate()
Dim datenlager As String
'Komma und Tausenderpunkte setzen. Prüfen obe Feld leer
Select Case Len(TextBox142.Value)
Case 0
TextBox142 = 0
End Select
datenlager = Format(TextBox142.Value, "##,##0.00 ")
TextBox142.Value = datenlager
End Sub
Dieses Spiel wiederhole ich wie gesagt 200 mal, bei jeder Textbox.
1. Frage: Gibt es Möglichkeiten dies zu vereinfachen?
2. Frage: Gibt es eine Möglichkeit, die Eingaben z. B. auf Zahlen zu begrenzen.
Bei fehlerhafter Eingabe (z. B. Anwender gibt aus Versehen einen
Buchstaben ein)
erscheint ein Warnhinweis. Die Textbox bleibt leer. Er eingegebene
Wert wird ignoriert.
3. Frage: Kann dies über eine Klasse definiert werden?
Wenn ja, kann ich die bestehenden Textboxen mit der Klasse verbinden.
Für die Hilfe danke ich im Voraus
Viele Grüsse
selma