Unsere Webseiten benötigen JavaScript. Dies scheint in Ihrem Browser jedoch deaktiviert zu sein.

News & Tipps zu Microsoft Access

Lesen Sie hier einige der besten Beiträge aus SmartTools Access Weekly sowie ausgewählte Inhalte anderer E-Mail-Newsletter von SmartTools Publishing rund um Microsoft Access.

Beitrag aus SmartTools Access Weekly

Eingabe immer mit zwei Ziffern beginnen

Access 365 2024 2021 2019 2016 2013 2010

FRAGE Ich möchte Eingabefehler in einem Formular meiner Access-Datenbank so gut wie möglich vermeiden. Bei der Erfassung von alphanumerischen Artikelnummern wie zu Beispiel "10JKB2304" muss immer sichergestellt sein, dass es sich bei den ersten beiden Zeichen immer um eine Ziffer handelt. Wie kann man mit einer VBA-Prozedur erreichen, dass eine Meldung erscheint und das Verlassen des Feldes verhindert wird, solange diese Bedingung nicht erfüllt ist?

Diverse Anfragen

ANTWORT Öffnen Sie das Formular in der Entwurfsansicht, markieren Sie das Feld, lassen Sie mit F4 das Eigenschaftenfenster anzeigen und stellen Sie die Eigenschaft "Vor Aktualisierung" auf "[Ereignisprozedur]". Klicken Sie dann auf die Schaltfläche mit den drei Punkten hinter dem Eigenschaftenfeld und geben Sie im VBA-Editor folgende Anweisungen ein:

Dim X$

X$ = Left$(Me.Feldname,2)
If Not IsNumeric() Then
  MsgBox "Die Eingabe muss immer mit 2 Ziffern beginnen!"
  Cancel = True
End If

Diese Anweisungen extrahieren zunächst per "Left$()" die ersten beiden Zeichen in die Variable "X$". Die Abfrage "IsNumeric(X$)" prüft dann, ob das Ergebnis numerisch ist. Ist das nicht der Fall (Not), wird eine entsprechende Meldung angezeigt und per "Cancel = True" das Verlassen des Feldes unterbunden.