TryFloatToDateTime
könnte da auch gute Dienste leisten.
Was ist ein falsches Datum?
Eine Funktion die das Datum prüft ist nicht schlecht, aber TryFloatToDateTime prüft nicht einen String auf korrektes Datum, sondern nur ob das Datum sich in einem Zeitraum befinden, also 01.01.0100 bis 31.12.9999.
EDIT:
Ich sehe, es gibt noch TryEncodeDate, TryEncodeTime, dann noch Try's für einzelne Tage, Monate usw., TryJulianDateToDateTime, TryModifiedJulianDateToDateTime, TryRecodeDateTime, TryStrToDate (!), TryStrToDateTime, usw.