VB-Homepage Tipp 168

Zulässige Eingaben in Textfeldern definieren

Ich glaube vor dem Problem, nur bestimmte Eingaben in Textfeldern zu zulassen, stand wohl schon jeder und so gab es unter ("In Textfeldern nur Zahleneingabe annehmen") schon einen ähnlich gelagerten Tipp.

Hier aber wird anders heran gegangen, so gibt es eine global definierte Funktion und bei Aufruf dieser werden als Variable die gültigen Zeichen mit übergeben, so das man sehr viele Textboxen mit sehr unterschiedlichen Eingaben definieren kann.

Die Funktion
°°°°°°°°°°°°°°°°°
Function ValiText (KeyIn As Integer, ValidateString As String, Editable As Integer) As Integer
Dim ValidateList As String
Dim KeyOut As Integer

If Editable = True Then
   ValidateList = UCase(ValidateString) & Chr(8)
Else
   ValidateList = UCase(ValidateString)
End If

If InStr(1, ValidateList, UCase(Chr(KeyIn)), 1) > 0 Then
   KeyOut = KeyIn
Else
   'ein ungültiges Zeichen wurde eingegeben
   KeyOut = 0
   Beep
End If

ValiText = KeyOut
End Function


Der Funktionsaufruf (in der KeyPress Aktion der jeweiligen Textbox)
°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
Keyascii = ValiText(Keyascii, "0123456789/-", True)

'Keyascii = das eingegebene Zeichen
'"0123456789/-" = alle gültigen Werte
''True = läßt Löschen mit Backspace zu

Mehr brauch es nicht dazu.


Tipp-Download

Quelle :

Zurück zur Übersichtsseite