Datumsformat funktioniert nicht

Hallo,
Ziel ist: Das in der Schreibweise „1.2.01“ in die Textbox txt1 eingegebene Datum soll umgewandelt werden in „Montag 1. Februar 2001“

Dim tmp As Date
tmp = txt1
tmp = Format(tmp, „d/mm/yyyy“) 'liefert 01.02.01
tmp = Format(tmp, „ddddd“) 'liefert 01.02.01
tmp = Format(tmp, „dd/mmmm/yyyy“) 'liefert: Fehler 13 Typen unverträglich
Wo liegt mein Fehler?
Gruß Wilhelm

Hallo Wilhelm!

das müßte funktionieren:

tmp = Format(tmp, „dddd d. mmmm yyyy“)

JJLehto

Hallo JJLetho,

hab´s eben versucht:

'Dim tmp
'Eingabe 12.12.12
'Ergebmnis : Samstag 12. November 2231 :frowning:

'Dim tmp As Date
'Eingabe 12.12.12
'Ergebnis "Laufzeitfehler 13 - Typen unverträglich :frowning:(

Hast Du noch eine Idee, auch für eine Umweglösung?
Danke u. Gruß
Wilhelm

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo Wilhelm!

Was verstehst du eigentlich unter „Eingabe“

Wenn das ein Formularfeld ist, dann setze das Format auf „Datum“ und dann funktioniert das (zumindest bei mir)

wenn du mit „Eingabe“ meinst, daß du programmtechnisch eine Variable füllst, dann mußt du dir uU die Datumsvariable selber zusammenbauen…
JJLehto

Hallo JJLetho,

Mit „Eingabe“ ist die Eingabe eines Ziffern-Datums (12.12.12) in die Textbox gemeint, deren Inhalt dann in das Langformat (Dienstag 12. Dezember 1912) umgewandelt werden soll. Mit „Zusammenbauen“ der Datumsvariablen ist bei mir nichts. Entweder Erschießen oder das Langdatum manuell eingeben (wenn keine Hilfe von Dir naht!)
Dank und Gruß
Wilhelm

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Versuchs mal damit
Hallo Wilhelm,

ich möchte mich ja nicht in eueren kleinen Disput einmischen,
aber versuchs mal damit:

Dim Txt As String
Dim date1 As Date

If Len(Form1.Text1.Text) > 8 Then
date1 = Left(Form1.Text1.Text, 2) + „-“ + & _ Mid(Form1.Text1.Text, 4, 2) + „-“ + & _ Right(Form1.Text1.Text, 4)
Else
date1 = Left(Form1.Text1.Text, 2) + „-“ + & _ Mid(Form1.Text1.Text, 4, 2) + „-“ + & _ Right(Form1.Text1.Text, 2)
End If
Form1.Text2.Text = Format(date1, „dddd dd. mmm yyyy“)

Vieleicht wäres auch besser den Tag/Monat/Jahr in jeweils einer getrennten Textbox einzutragen, da bei der Eingabe weniger Fehler passieren können.
Das Jahr würde ich 4stellig eingeben um Formatierungsfehler zu vermeiden. Ich habe leider keine Möglichkeit gefunden, die letzte 12 zu unterscheiden (Will sagen 2012 oder 1912).

Ich hoffe ich konnte dir helfen.

Gruss
Kenchi