Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA Datum englisch vs. deutsch

VBA Datum englisch vs. deutsch
25.10.2024 12:06:53
namron28
Hallo zusammen,

ich habe ein Problem, welches sich auf nun zwei meiner Projekte auswirkt, was mir erst heute bewusst wird. Ich habe eine UserForm, in der in ein Textfeld habe, in dem ich ein Datum eingeben muss. Die Eingabe soll nach deutscher Form DD.MM.JJJJ erfolgen. Im Code wird per "IsDate(datum)" geprüft, ob es sich um ein valides Datum handelt. Soweit so gut.

Jetzt wollte ich in meinem neuen Projekt Edgecases probieren und schauen, ob er in die geplante Fehlermeldung reingeht, wenn ich als Datum 01.13.2024 eingebe. Mit Erschrecken musste ich feststellen, dass nicht die entsprechende Fehlermeldung ausgegeben wird á la "Ungültiges Datum", sondern mit dem Hauptcode fortgefahren wird und zwar mit dem Datum 13.01.2024.

Wie kann ich sichergehen, dass der Input stets als deutsche Schreibweise gehandhabt wird? Ich spielte schon mit dem Gedanken, mir das Datum zerpflücken zu lassen und per DateSerial es wieder zusammensetzen, aber das Ergebnis ist dann der 10.01.2025, was ja auch inkorrekt ist. Ich konnte die Eingabe der Tage und Monate auf maximalen Wert ermitteln und wenn dieser über 28/29/30 oder 31 liegt eine Fehlermeldung ausgeben, aber dann müsste ich noch berechnen, ob ein Schaltjahr für das betrachtete Jahr vorliegt.

Wie kann ich sichergehen, dass der Input stets als deutsche Schreibweise gehandhabt wird?

Mit besten Dank im Voraus
Norman
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Datum englisch vs. deutsch
25.10.2024 12:13:11
Onur
Keine Ahnung, was dein Code falsch macht, denn du hast ihn ja nicht gepostet.
AW: VBA Datum englisch vs. deutsch
25.10.2024 12:17:00
Ulf
Hi,


Public Sub Test()
'str als Textboxeingabe
Dim str As String
Dim dtDate As Date
str = "01.13.2024"
If Format(str, "dd.MM.yyyy") = str Then
dtDate = str
End If
End Sub

hth
Ulf
Anzeige
AW: VBA Datum englisch vs. deutsch
25.10.2024 14:49:52
Yal
Hallo Norman,

innerhalb Excel hast Du kein Problem mit Datum, solang Du sicherstellst, dass in der Zelle ein gültiges Datum vorliegt. Das Format ist dann nur für die Anzeige relevant.

Wenn Du die Daten über eine Textdatei exportiert, solltest Du das internationales Datenformat verwenden: YYYY-MM-DD
https://de.wikipedia.org/wiki/ISO_8601

VG
Yal
Anzeige
AW: VBA Datum englisch vs. deutsch
25.10.2024 15:50:05
daniel
Hi
stelle den Text mit dem Datum mal um in die ISO-Form (Jahr-Monat-Tag)
dann ist die Reihenfolge eindeutig und es kann keine Verwechslungen von Tag und Monat geben.

Public Sub Test()

'str als Textboxeingabe
Dim str As String
Dim strArr
Dim dtDate As Date
str = "1.13.2024" '--- Testboxeingabe
strArr = Split(str, ".") '--- teilen in Einzelwerte
str = strArr(2) & "-" & strArr(1) & "-" & strArr(0) '--- umstellen auf ISO-Schreibweise
If IsDate(str) Then
dtDate = DateValue(str)
End If
End Sub

ggf kann man vor dem Split noch die Sicherheitsabfrage einbauen: if str like "*.*.*" um sicher zu gehen, dass auch zwei Punkte vorhanden sind
Gruß Daniel
Anzeige
AW: VBA Datum englisch vs. deutsch
25.10.2024 13:40:45
namron28
@Ulf
Danke Ulf für diesen Tipp, es scheint für meinen Anwendungsfall zu funktionieren. Mit Format(...) habe ich auch rumgespielt, aber bin nicht auf die Idee gekommen, dies als Teil der Bedingung einer If-Abfrage zu nutzen.

@Michael
Den Gedanken hatte auch und hatte verstanden, dass dies nicht mehr möglich sei. Ich schaue mir nochmal deine Links an in der Hoffnung doch noch eine Lösung zu finden. Danke für die Links
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige