Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
392to396
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
392to396
392to396
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datum in Textbox

Datum in Textbox
07.03.2004 20:23:22
Fritz Sanne
Hallo,
ich benötige noch einmal Hilfe.
Ein in eine Textbox eingebenes Datum soll überprüft und in das Format "dd.mm.yy" geändert werden.
Das versuche ich mit dem nachstehenden Code, aber es klappt nicht. Gebe ich z.B 3.4.04 ein, wird in 26.04.09 geändert

Private Sub txtSuchDatum_AfterUpdate()
If Not IsDate(txtSuchDatum) Then
MsgBox "Kein gültiges Datum!", vbCritical, "Falsches Datum"
Exit Sub
End If
txtSuchDatum = Format(txtSuchDatum, "dd.mm.yy")
End Sub

wie immer schon mal vielen Dank für Eure Mühe.
Fritz

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum in Textbox
07.03.2004 20:26:08
Hajo_Zi
Hallo Fritz
ich habe mich vor einiger Zeit mit dem Problem befast
Option Explicit
Dim BoEnter As Boolean

Private Sub TextBox6_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
'   erstellt von Hajo.ziplies@web.de  Stand 01.08.03
'   Datumseingabe  01.01.03;1.1.03 oder komlettes Jahr
'   Eingabe des Tages und des Monat zweistellig werden die Punkte automatisch gesetzt
'   sie können nur gelöscht durch markierung des punktes und der Zahl davor
'   Buchstaben werden ausgeschlossen, nur Zahlen und Punkt
'   die Überprüfung ob Datum erfolgt in 

Private Sub TextBox6_AfterUpdate()
Select Case KeyAscii
Case Asc("0") To Asc("9")
Case Asc(".")
If Len(TextBox6) = 0 Then
KeyAscii = 0
Else
If Len(TextBox6) - Len(Application.Substitute(TextBox6, ".", "")) = 2 Then
KeyAscii = 0
ElseIf Len(TextBox6) > 1 Then
If Mid(TextBox6, Len(TextBox6), 1) = "." Then KeyAscii = 0
Else
KeyAscii = Asc(".")
End If
End If
Case Else
KeyAscii = 0
End Select
End Sub


Private Sub TextBox6_Change()
If BoEnter = True Then Exit Sub
If Len(TextBox6) = 2 Then
If InStr(TextBox6, ".") = 0 And BoEnter = False Then TextBox6 = TextBox6 & "."
ElseIf Len(TextBox6) = 5 Then
If Len(TextBox6) - Len(Application.Substitute(TextBox6, ".", "")) < 2 Then
TextBox6 = TextBox6 & "."
End If
End If
End Sub


Private Sub TextBox6_AfterUpdate()
BoEnter = True
If Right(TextBox6, 1) = "." Then TextBox6 = Mid(TextBox6, 1, Len(TextBox6) - 1)
'   Jahreszahl vom aktuellen Jahr ergänzen falls nicht vorhanden
If Len(TextBox6) - Len(Application.Substitute(TextBox6, ".", "")) = 1 Then
TextBox6 = TextBox6 & "." & Year(Date)
End If
If IsDate(TextBox6.Text) Then
If Format(CDate(TextBox6.Value), "dd.mm.yy") <> TextBox6 Then
MsgBox "Das Datum wurde übersetzt"
End If
TextBox6 = Format(CDate(TextBox6.Value), "dd.mm.yy")
Else
TextBox6 = ""
End If
BoEnter = False
End Sub

Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Pro und Excel Version XP Pro


Anzeige
AW: Datum in Textbox
07.03.2004 20:35:09
Fritz Sanne
Vielen Dank, Hajo, für Deine schnelle Hilfe.
Ist ja doch ein schwereres Problem, als ich dachte.
Ich erde mich reinknien.
Fritz
AW: Datum in Textbox
07.03.2004 20:42:25
Hajo_Zi
Hallo Fritz
Dein Problem ist bestimmt einfacher zu lösen, aber den Code hatte ich zur Hand.
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Pro und Excel Version XP Pro


AW: Datum in Textbox
07.03.2004 20:52:28
Fritz Sanne
Hallo Hajo,
ja, Du hast Recht. Es reichte:
txtSuchDatum=Format(Cdate(txtSuchDatum.Value), "dd.mm.yy").
Aber ohne Deine Hilfe wäre mir wahrscheinlich erst wieder übermorgen eingefallen, dass es "CDate" gibt.
Also nochmals großes Dankeschön.
Fritz
Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige