Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
980to984
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
980to984
980to984
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Fehler mit len bei Datumsprüfung

Fehler mit len bei Datumsprüfung
31.05.2008 16:17:44
Harald
Hallo,
ich habe mal wieder ein problem, die Datei habe ich unter
https://www.herber.de/bbs/user/52727.xls hochgeladen.
Mit dem unten stehenden Code möchte ich prüfen, ob das Datum korrekt in die Inputbox eingegeben wurde (TT.MM.JJJJ). Ich bekomme aber immer den Fehler, dass mit len() immer 8 Stellen erkannt werden statt 10, obwohl ich das Jahr mal mit 4 und mal mit nur 2 Stellen schreibe.
Liegt das daran, dass ich zu Hause Excel 11 benutze? Oder wandelt Excel Date-Werte immer in 8 Stellen um?
m.f.G.
Harald

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Datum As Date                               ' Datum der eingegebenen Daten
Dim DatumNeu As Date                            ' geändertes Datum der eingegebenen  _
Daten
Dim strTitel As String                          ' Fenstername
Dim strMeldung As String                        ' Meldung für User
Datum = ThisWorkbook.Sheets("Tabelle1").Cells(8, "A").Value
strTitel = "Tag der angegebenen Werte eingeben"
strMeldung = "Die eingegebenen Werte sind vom:" & Chr$(10) _
& "(Tag und Monat zweistellig, Jahr vierstellig, jewels Punkt dazwischen:  TT.MM. _
JJJJ)"
DatumNeu = "31.03.9999" ' hiermit wird erreicht, dass Inputbox erstmals aufgerufen wird
While ((Not IsDate(DatumNeu)) Or (DatumNeu > Date) Or (Len(DatumNeu)  10))
' Nur wenn Datum erkannt, älter als heute und 10-stellig eingegeben wurde wird die  _
Schleife verlassen
DatumNeu = InputBox(strMeldung, strTitel, Datum)
If Not IsDate(DatumNeu) Or Len(DatumNeu)  10 Then
MsgBox ("Falsche Datumseingabe Tag(2-stellig).Monat(2-stellig).Jahr(4-stellig)  _
eingeben!")
ElseIf DatumNeu >= Date Then
MsgBox ("Datum muss vor heute sein!")
End If
Wend
ThisWorkbook.Sheets("Tabelle1").Cells(48, "A").Value = DatumNeu
MsgBox (DatumNeu)
End Sub


6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehler mit len bei Datumsprüfung
31.05.2008 17:30:00
hary
Hallo Harald
Ersetz mal die beiden:

10
durch
8


Dann kommt egal wie's man schreibt im richtigen Format in Zelle a48
Bei mir musste ich die "A" durch 1 ersetzen.
Gruss Hary

AW: Fehler mit len bei Datumsprüfung
31.05.2008 18:01:00
Harald
Hallo Hary,
bei mir zu Hause (Excel 2003) geht es mit "A", auf der Arbeit (Excel 97) muss ich das noch ausprobieren.
Deine Lösung mit dem Ersetzen durch 8 habe ich auch schon ausprobiert - dann geht es zwar, aber bei Datumsangaben mit zweistelliger Jahresangabe werden diese nicht als Fehler erkannt (ich will ja die zweistelligen Jahresangaben als Fehler herausfiltern).
m.f.g.
Harald

Anzeige
AW: Fehler mit len bei Datumsprüfung
31.05.2008 18:43:29
Gerd
ThisWorkbook.Sheets("Tabelle1").Cells(48, 1).Value = CDate(Format(DatumNeu, "dd.mm.yyyy"))
Wenn nicht gerade diese Zelle ein bestimmtes abweichendes Zellen-Zahlenformat hat, Harald.
Gruß Gerd

AW: Fehler mit len bei Datumsprüfung
31.05.2008 19:06:00
Harald
Hallo Gerd,
vielen Dank für die Hilfe, aber es ist auch noch nicht genau das, was ich brauche.
Über die Inputbox soll der Benutzer die Möglichkeit haben, ein anderes Datum einzugeben, und dieses Datum möchte ich auf vierstellige Jahresangaben prüfen. ich habe in einigen Forumsbeiträgen gelesen, dass in Excel 98 die zweistellige Jahresangabe teilweise falsch interpretiert wird.
M.f.G.
Harald

Anzeige
AW: Fehler mit len bei Datumsprüfung
31.05.2008 20:29:26
Gerd
Hallo Harald,
gibt es in xl97 den Vergleichsoperator "Like" ?
Gruß Gerd

AW: Fehler mit len bei Datumsprüfung
31.05.2008 20:35:45
Harald
Hallo Gerd,
das kann ich von meinem Computer aus leider nicht feststellen, da bei mir zu Hause Excel 2003 läuft. An den Firmenrechner komme ich leider erst am Montag wieder.
m.f.g.
Harald

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige