Ich habe ein Formular in Access und möchte dieses anhand eines VBA Codes so programmieren, dass in dem Textfeld „txt_Anzahl“ keine Dezimalzahlen eingegeben werden dürfen. Wie mach ich das am einfachsten?
Danke.
Hallo,
Ich habe ein Formular in Access und möchte dieses anhand eines
VBA Codes so programmieren, dass in dem Textfeld „txt_Anzahl“
keine Dezimalzahlen eingegeben werden dürfen. Wie mach ich das
am einfachsten?
wenn Du das Textfeld in der Entwicklungsumgebung doppelt anklickst, geht der Editor auf und VBA schreibt die schon mal die Prozedur für das Ereignis ‚Change‘.
Private Sub txt\_Anzahl\_Change()
End Sub
Stell den Cursor dann hinter ‚End Sub‘ und wähle rechts oben das Ereignis ‚Validate‘ aus. Dann sieht das so aus:
Option Explicit
Private Sub txt\_Anzahl\_Change()
End Sub
Private Sub txt\_Anzahl\_Validate(Cancel As Boolean)
End Sub
Wenn Du in das Ereignis nun folgenden Code schreibst und das Programm startest, wird die überflüssige Prozedur automatisch entfernt und Du kannst das Textfeld nicht mehr verlassen, ohne einen gültigen, ganzzahligen Wert einzugeben. Text wird als Eingabe abgelehnt und Eingaben mit Punkt oder Komma auch.
Getestet mit VB6, das soll aber in VBA ebenso funktionieren.
Private Sub txt\_Anzahl\_Validate(Cancel As Boolean)
If IsNumeric(txt\_Anzahl) = True Then
If Val(txt\_Anzahl) CDbl(txt\_Anzahl) Then
Cancel = True
End If
Else
Cancel = True
End If
End Sub
Gruß Rainer