Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1456to1460
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
Inhaltsverzeichnis

Datum Überprüfen

Datum Überprüfen
13.11.2015 07:05:10
Peter
Hallo Zusammen
Wieder einmal benötige ich Eure Hilfe.
Problem:
In einer UF ist der Textbox5 folgender Code hinterlegt
Private Sub TextBox5_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox5 = "" Then Exit Sub
If Not IsDate(TextBox5) Then
MsgBox "Bitte ein korrektes Datum in VK-Datum eingeben", vbExclamation, "Meldung"
TextBox5 = ""
End If
End Sub

Dadurch soll überprüft werden ob ein korrektes Datum eingetragen wurde.
Nun ist es so, dass wenn ich z.B. 02.13.2015 eingeben, wird das so akzeptiert obwohl es kein Monat 13 gibt.
Meine frage ist:
wie kann ich überprüfen ob auch ein korrekter Monat oder auch Tag (z.B 33.) eingetragen wurde.
Für Eure Hilfe bereits im Voraus vielen Dank.
Viele Grüße
Peter (hpo)

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Format-Problem?
13.11.2015 07:35:55
MCO
Moin!
Hast du evtl ein Format-Problem? Im englischen ist Monat + Tag vertauscht, es gibt also den 13.2.15.
Prüfe das mal und formatiere vor der Prüfung durch die Prozedur den Datumswert um.
Gruß, MCO

Sprachverwirrung
13.11.2015 07:54:14
RPP63
Hallo!
Ist ein allgemeines VBA-Problem, welches sich ohne weiteres wohl nicht lösen lässt.
Selbst wenn Du 2-13 in die Textbox eingibst, wird es als korrektes Datum 13.02.2015 erkannt, da hilft auch die bereits vorgeschlagene Formatierung nichts.
Hilft Dir nicht weiter, deshalb stelle ich den Thread wieder auf offen.
Gruß Ralf

für deutsches Datumsformat "TT.MM.JJJJ"
13.11.2015 08:48:27
Tino
Hallo,
evtl. könnte man die Prüfung so durchführen.
Die eingabe für ein richtiges Datum im Format "TT.MM.JJJJ"
Private Sub TextBox5_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not CheckDate_DE(TextBox5) Then
MsgBox "Bitte ein korrektes Datum in VK-Datum eingeben", vbExclamation, "Meldung"
TextBox5 = ""
End If
End Sub
Function CheckDate_DE(sTxTDate$) As Boolean
Dim varDate, tmpDate As Date
If sTxTDate  "" Then
If IsDate(sTxTDate) Then
varDate = Split(sTxTDate, ".")
If UBound(varDate) = 2 Then
tmpDate = DateSerial(varDate(2), varDate(1), varDate(0))
CheckDate_DE = (sTxTDate = Format(tmpDate, "dd.mm.yyyy"))
Exit Function
End If
End If
End If
End Function
Gruß Tino

Anzeige
AW: für deutsches Datumsformat "TT.MM.JJJJ"
13.11.2015 10:30:54
Peter
Hallo Zusammen
@ MCO
Danke für Deine Beitrag
Das Datumsformat ist korrekt eingestellt. Deutsches datum (TT.MM.JJJJ)
@ Ralf
Auch Dir ein Danke für Deinen Beitrag.
@ Tino
Viele Dank für Deinen Lösungsvorschlag
Aber leider erhalte ich hier eine Fehlermeldung:
"Fehler beim Kompilieren:
Projekt oder Bibliothek nicht gefunden."
In der Function wird Format blau unterlegt.
Viele Grüße
Peter (hpo)

AW: für deutsches Datumsformat "TT.MM.JJJJ"
13.11.2015 11:08:03
EtoPHG
Hallo Peter,
Ich sehe keinen Fehler in Tino's Code.
Hast du ev. irgendwo eine Sub oder Function die Format heisst in deinen Codes? Sehr gefährlich, da dies ein VBA Schlüsselwort ist!
Hier noch ein alternativer Ansatz:
Private Sub TextBox5_Exit(ByVal Cancel As MSForms.ReturnBoolean)
On Error GoTo error_exit
If Not (Len(TextBox5) > 0 And IsDate(TextBox5) And _
TextBox5 = Format(CDate(TextBox5), "dd.mm.yyyy")) Then _
GoTo error_exit
Exit Sub
error_exit:
MsgBox "Bitte ein korrektes Datum (TT.MM.JJJJ) in VK-Datum eingeben", _
vbExclamation, "Falsche Eingabe"
Err.Clear
TextBox5 = ""
End Sub
Gruess Hansueli

Anzeige
AW: für deutsches Datumsformat "TT.MM.JJJJ"
13.11.2015 12:40:18
Peter
Hallo Hansueli
Vielen Dank für Deine Hilfe.
Es scheint so, das ich eine Bibliothek nich habe. Da in der Function von Tino die Format anweisung Blau unterlegt wird.
Bei Deinem Code erhalte ich die gleiche Fehlermeldung und bei der Format anweisung wird die Textbox5 blau unterlegt.
Viele Dank
Gruß
Peter (hpo)

AW: für deutsches Datumsformat "TT.MM.JJJJ"
13.11.2015 12:49:17
hary
Moin
Schau mal im VBA-Editor unter Extras/Verweise ob da "NICHT VORHANDEN" ein Haken gesetzt ist. Wenn ja dann rausnehmen.
gruss hary

AW: für deutsches Datumsformat "TT.MM.JJJJ"
13.11.2015 20:26:05
Peter
Hallo Hary
Vielen Dank für Deinen Tipp.
DAS WAHRS ;) ;)
Vielen Dank
Gruß
Peter (hpo)
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige