![]() |
den unterschied zweier Datum-Werte berechnen
Hallo,
Ich möchte gerne zwei Datum-Werte mit einander vergleichen und den Unterschied zurückbekommen. Beispiel ich gebe heutieges Datum ein 22.04.2005 und ein belibieges Datum in der Vergangenheit z.B. 28.02.2004 und zurück möchte ich gerne 23.01.0001 erhalten. Ich gehe wie folgt vor nur das ich nicht das richtige herausbekomme.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var Tage, Jahre, Monate: Integer; jahr, monat, tag: word; jahr1, monat1, tag1: word; GebDatum: TDate; begin GebDatum:=DateTimePicker1.Date; DecodeDate(Now, jahr1, monat1, tag1); DecodeDate(GebDatum, jahr, monat, tag); Jahre:=YearsBetween(Now, GebDatum); GebDatum:=StrToDate(IntToStr(tag) + '.' + IntToStr(monat) + '.' + IntToStr(jahr1)); Monate:=MonthsBetween(Now, GebDatum); GebDatum:=StrToDate(IntToStr(tag) + '.' + IntToStr(monat1) + '.' + IntToStr(jahr1)); Tage:=DaysBetween(Now, GebDatum); Edit1.Text:=IntToStr(Tage) + ', ' + IntToStr(Monate) + ', ' + IntToStr(Jahre); end; |
Re: den unterschied zweier Datum-Werte berechnen
Hallo, wie kommst du auf 23?
|
Re: den unterschied zweier Datum-Werte berechnen
Naja der unterschied ist doch ein volles Jahr ein voller Monat und 23 Tage weil der Februar 2004 ja 29 Tage hate.
Dann nimmt er ja den einen Tag aus Februar mit und die 22 aus März. |
Re: den unterschied zweier Datum-Werte berechnen
Hallo jonny,
sieh dir mal in der OH die Funktionen [oh]DaysBetween, MonthsBetween, YearsBetween[/oh] an. In Verbindung mit ![]() Greetz alcaeus |
Re: den unterschied zweier Datum-Werte berechnen
Hi.
Und was bekommst du stattdessen raus? |
Re: den unterschied zweier Datum-Werte berechnen
Stattdessen bekomme ich 05, 01, 0001 raus. Jahr und monat sind ja richtig aber die Tage Passen nicht und da ist noch ein Fehler drin nicht nur der mit den Schaltjahren.
|
Re: den unterschied zweier Datum-Werte berechnen
Hi.
Zitat:
|
Re: den unterschied zweier Datum-Werte berechnen
Hai jonny,
warum weisst Du GebDatum denn mehrmals Werte zu? Zitat:
|
Re: den unterschied zweier Datum-Werte berechnen
Weil wenn ich z.B. die Tage bekommen will weise ich GebDatum das heutige Jahr und Monat zu denn sonnst würde ich ja die ganzen Tage bekommen von dem Ursprungs Datum (365 fürs Jahr 31 für den Monat und noch die 23 von dem nicht vollendeten Monat), ich möchte aber nur die Tage haben die kein Monat sind. Deswegen weise ich GebDatum das heutige Jahr und den heutigen Monat zu.
|
Re: den unterschied zweier Datum-Werte berechnen
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:27 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz