PDA

Vollständige Version anzeigen : Datumseingabe


Robin Hood
24.10.2003, 13:16
Hallo zusammen,

ich habe mir das berühmt berüchtigte Buch "Das Access VBA Codebook" gekauft.

In diesem Buch, auf Seite 483 / 484, ist eine alternative Datumseingabe beschrieben.
Diese habe ich in einem Formular geschrieben, so sieht der Code aus:

Private Sub txtDatum_KeyPress(KeyAscii As Integer)
Select Case KeyAscii

Case 48 To 57, 8, 32, 46
Case 44

KeyAscii = 46

Case Else
KeyAscii = 0

End Select

End Sub


Private Sub txtDatum_LostFocus()
Dim strDatum As String

strDatum = GetDateFromString(Me.txtDatum.Text)

If strDatum <> "" Then
Me.txtDatum = strDatum

End If

End Sub

Oben drüber habe ich
Function GetDateFromString()
End Function
stehen. Leider funktioniert dieser Code nicht. Fehlermeldung "Typen unverträglich"

Dieser Code soll bewirken das ich nur Zahlen eingeben brauche und es wird automatisch ein Datumsformat gebildet.
Zum Beispiel: 24102003 = 24.10.2003
Die Pünktchen werden automatisch gesetzt.

Was mache ich falsch ???

Gruß

Robin

jadatcoder
24.10.2003, 13:34
Hallo,

AFAIK geht das auch einfacher.
Gib dem Datumsfeld doch einfach ein Eingabeformat vor.

- öffne die Eigenschaften des Datumsfeldes im Formularentwurf
- setze den Cursor in die Zeile 'Eingabeformat'
- klicke dann rechts in der Zeile auf die Schaltfläche mit den drei Punkten
- folge dem Assistenten
- ändere ggfls. die Vorlage für die Jahreszahl in 4-stellige Angabe

-fertig

Der Eintrag im 'Eingabeformat' 99.99.0000;0;_
bedeutet: 2-stellige Tagesangabe;2-stellige Monatsangabe;
4-stellige Jahresangabe;0;Platzhalterzeichen

Wenn der Cursor später im Formularfeld (zur Laufzeit) steht,
brauchst Du auch nur die Ziffern zu tippen.
Die Eingabemaske wird vorgegeben (z.B. __.__.____)
Viel Erfolg

Robin Hood
24.10.2003, 13:43
Hallo,

Danke für den Tipp, funktioniert gut.

Hätte trotzdem gerne gewußt was an dem Code falsch ist.

Gruß

Robin