Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Ermittlun von TAGEN, MONATEN JAHREN durch Datumsunterschied





Frage

Hallo, Ich könnte eure Hilfe gebrauchen, bin gerade dabei Kalenderdaten zu berechnen und zwar möchte ich aus Datumsunterschieden die Anzahl an Tagen, Monaten und Jahren ermitteln. Meine Tabelle sieht vereinfacht so etwa aus Zelle A1 Anfangsdatum; Zelle B1 Enddatum; in Zelle C1 habe ich die gesamt Tage schon berechnet Formel: =SUMME(B1;-A1;1) wobei 1 für den ersten Tag steht der ja mitberechnet werden sollte. Das Problem beginnt aber jetzt bei der Formelschreibung für die genaue Ermittlung der TAGE, MONATE und JAHRE. Beispiel: 23.05.1972 bis 12.09.1996 das sind 5.226 Tage - herauskommen sollte dann aber in Zelle D1 21 Zelle E1 3 Zelle F1 24 ( 21 Tg 3 M 24 J ) Wer weiß die Lösung ich hab schon einiges probiert Wenn,Dann mit Jahr, Monat, Tag auch getrennt voneiander und stieß immer auf ein Problem bei unterschiedlichen Datumseingaben. Bitte um H I L F E Danke mfG dido

Antwort 1 von nostalgiker6

Kommt es auf ein absolut exaktes Ergebnis an, oder kann man die Schaltjahresproblematik vernachlässigen?

Antwort 2 von nostalgiker6

Übrigens: Ich komme auf 8878 Tage

Antwort 3 von Flintstone

@nostalgiker6,
auf den Tippfehler 23.05.1982 hättest du wirklich auch selber kommen können.
Gruß
Fred

Antwort 4 von tagedieb

Hallo,
versuch es mal mit
d1 =tag(c1)-30
e1 =monat(c1)-12
f1 =jahr(c1)-1899

gruss

Antwort 5 von mein_Tipp

http://www.0711office.de/excel/funktionen/datedif.htm

Ciao

Simi

Antwort 6 von dido

Danke an nostalgiker6 und Flintstone
für die guten Tips

übrigens das mit dem Tippfehler tut mir leid, es war nur ein falscher Blick. (und die 1 nicht vergessen), dann sind es 8.879 Tg, aber das löst das Problem auch nicht.
Das Ergebnis sollte schon korrekt sein auch mit Schaltjahren

Ich probiere weiter und nochmals Dank

Gruß dido

Antwort 7 von nostalgiker6

Hallo - viel ist da nichts mehr zu probieren: Antwort 5 von "mein_Tipp" löst das Problem (auch zu meiner Begeisterung) fast vollständig. Nur der letzte Schritt muss noch vollzogen werden: Von den die Jahre übersteigenden Tagen die Tage abzuziehen, die in den die Jahre übersteigenden Monaten enthalten sind. Da würde ich nun allerdings mal eine Ungenauigkeit hinnehmen und den Monat zu 30 Tagen rechnen - dann ist das ganz einfach.

Antwort 8 von nostalgiker6

Und auch da habe ich mich noch vertan (hab´ gerade noch mal ´reingeschaut): mit der Option "MD" geht auch das noch korrekt und automatisch. Im obigen Beispiel kommt dann 24 Jahre, 3 Monate und 20 Tage heraus. Das habe ich zwar nicht genau nachgerechnet, aber es passt.

Antwort 9 von Bubbelup

Hallo,
Stimmt und für die Copy/Paste- Fraktion hier:
=DATEDIF($A$1;$B$1;"MD")
Tage
=DATEDIF($A$1;$B$1;"YM")
Monate
=DATEDIF($A$1;$B$1;"Y")
Jahre

Gruss

Antwort 10 von dido

herzichen Dank an mein_Tip (Antwort 5)

Ich muß sagen ich bin überwältigt, das funktioniert wirkich und mit so einer kurzen Formel

echt Spitze und nochmals Danke
wenn ich wieder mal ein Problem habe melde ich mich wieder, bis dahin allen die mir geholfen haben, macht weiter so....

Gruß dido

Antwort 11 von peko

Hallo dido und alle anderen!

Leider funktioniert das alles nicht korrekt bei z.B:

Anfangsdatum: 30.01.2006
Enddatum: 13.03.2006

Anfangsdatum: 31.03.2006
Enddatum: 12.05.2006

Würde mich sehr interessieren, wie hier noch nachgebessert werden könnte.

MfG peko

Antwort 12 von nostalgiker6

Zu Antwort 11:
Nach erster kurzer Nachprüfung dieser Korrektheitsabweichungen habe ich den Eindruck, dass die Funktion es sich mit dem Schaljahr etwas bequem macht - schade, aber nicht schrecklich.

Antwort 13 von mein_Tipp

Das mit dem Fehler war auch für mich neu.
So lernt man dazu.

Habe beim Suchen im Internet folgendes gefunden:
http://www.excelformeln.de/formeln.html?welcher=141

Vor den Erläuterungen findet man eine Formel die alles abdecken sollte. Diese gegebenenfalls anpassen.

Simi

Antwort 14 von peko

Inzwischen habe ich eine Lösung erarbeitet, die sowohl die Monate mit 30 Tagen als auch den Februar mit der Schaltjahrproblematik berücksichtigt.

Zur Erinnerung: Schaltjahre sind alle durch 4 teilbaren Jahre, jedoch nicht die durch 100 teilbaren Jahre mit der Ausnahme, dass die durch 400 teilbaren Jahre doch wieder Schaltjahre sind.

Nun zur Lösung: In A1 und B1 stehen zwei beliebige Datumsangaben. Ich verzichte im Folgenden darauf, die Lösung zu kommentieren. Ist vielleicht ganz reizvoll, sie selbst nachzuvollziehen.

D1: =WENN($A$1<=$B$1;$A$1;$B$1)
D2: =WENN($A$1>$B$1;$A$1;$B$1)

D3: =TAG($D$1)
D4: =WENN(MONAT($D$2)>1;MONAT($D$2)-1;MONAT($D$2))
D5: =JAHR($D$2)

D6: =$D$5/400-GANZZAHL($D$5/400)
D7: =$D$5/100-GANZZAHL($D$5/100)
D8: =$D$5/4-GANZZAHL($D$5/4)
D9: =WENN($D$6=0;29;WENN($D$7=0;28;WENN($D$8=0;29;28)))

D10: =WENN(ODER($D$4=4;$D$4=6;$D$4=9;$D$4=11);30;WENN($D$4=2;$D$9;31))
D11: =DATUM(JAHR($D$1);MONAT($D$1);$D$10)
D12: =WENN($D$1>$D$11;$D$11;$D$1)

A4: =DATEDIF($D$12;$D$2;"Y")
A5: =DATEDIF($D$12;$D$2;"YM")
A6: =DATEDIF($D$12;$D$2;"MD")

B4: =WENN(A4=1;"Jahr";"Jahre")
B5: =WENN(A5=1;"Monat";"Monate")
B6: =WENN(A6=1;"Tag";"Tage")

Nun könnte man Spalte D ausblenden und hätte ein korrektes Ergebnis. Wenn jemand an der Lösung interessiert ist, sich aber nicht die Arbeit des Abtippens machen will, teilt er mir seine mail-Adresse mit. Ich schicke ihm dann die Datei.

Gruß peko

Antwort 15 von CaroS

Hallo peko,

was macht mein Excel falsch, dass es mit
A1: 30.03.2006 und B1: 12.05.2006 dasselbe berechnet wie mit
A1: 31.03.2006 und B1: 12.05.2006: 0 Jahre, 1 Monat, 12 Tage? Ist das gewollt?

Mit A1: 30.03.2006 und B1: 12.05.2006 müssten es 1 Monat und 13 Tage sein, wir wollten doch den 31.03.2006 mitzählen! Oder nicht?

Falls das so nicht gewollt war, nicht ärgern, weitermachen! Nur wer gar nichts tut, macht keine Fehler.

Gruß,
CaroS

Antwort 16 von jasper111

hallo peko,

schick die datei bitte an jasper111@t-online.de

danke und gruss
jasper111

Antwort 17 von CaroS

Lieber Rechenkünstler(innen),

das Problem ist nicht leider trivial. Es liegt auch nicht daran, dass wir alle nicht zählen und nicht rechnen können, sondern an der Frage: Wie lang ist ein Monat, wann beginnt und wann endet er?

Damit nicht der falsche Eindruck entsteht, das Problem würde etwa nur um den 28. Februar herum auftreten, sei hier folgendes Beispiel gewählt: Datumsdifferenz
zwischen dem 26.04. u. dem 05.06. im Jahre des Herrn YYYY (beliebig!)
.

Und nun die beiden Rechnungen (in meiner leicht verständlichen, noch nicht patentierten Privatmathematik):

Nr. 1
(26.04. -> 05.06.) = (26.04. -> 25.05.) + (26.05. -> 05.06.)
. . . . . . . . . . . . . . . . = 1 ganzer Monat + ( 6 + 5 ) Tage
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Der 31.05. wurde selbstverständlich mitgezählt!

Ergebnis: 1 Monat + 11 Tage - Irgendwelche Einwände?

Nr. 2
(26.04. -> 05.06.) = (26.04. -> 30.04.06.) + (01.05. -> 31.05.) + (01.06. -> 05.06.)
. . . . . . . . . . . . . . . . = . . . . . . 5 Tage . . . . . . + 1 ganzer Monat . . + . . . . 5 Tage
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Der 31.05. wurde hier scheinbar ebenso mitgezählt.
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Aber nur scheinbar und nicht ganz genau so wie oben!

Ergebnis: 1 Monat + 10 Tage - denn 5 + 5 = 10, dagegen kann man nichts sagen!

Die Ursache des Problems liegt - wie oben zu sehen - in der Willkür, wie man den Monat (oder bei größeren Zeiträumen die Monate) legt, wann man ihn (sie) beginnen und wann enden lässt.

Von den insgesamt vorhandenen Tagen der Datumsdifferenz bezeichnet man willkürlich mal einen kleineren und mal einen größeren zusammenhängenden Abschnitt (von meist 30 oder 31 Tagen) als Monat und nimmt ihn aus der "Tagesdifferenzberechnung" heraus. Übrig bleiben demzufolge mal mehr (11) und mal weniger (10) Tage.

Die eine Vorgehensweise (Nr. 1) ist genauso gut oder schlecht wie die andere (Nr. 2). Leider führen beide aber unter bestimmten Umständen zu unterschiedlichen Ergebnissen, und dagegen kann keine noch so kluge mathemathische Formel etwas machen. Da würde nur eine verbindliche Festlegung helfen, was richtig und was falsch ist (Nr. 1/Nr. 2).

Im selben Stil wie die Festlegung "Null hoch Null ist 1". Das ist genauso sinnvoll wie es widersinnig ist, denn einerseits gilt für Zahlen: Zahl hoch Null = 1, also 3^0 = 1, 2^0 = 1, 1^0 = 1 und deshalb auch 0^0 = 1 - könnte man meinen. Andererseits heißt Zahl hoch N, dass die Zahl N-mal mit sich selbst multipliziert wird. Also 0^3 = 0 * 0 * 0 = 0,
0^2 = 0 * 0 = 0, 0^1 = 0 und 0^0 = 0. Da kann ja nicht plötzlich mehr herauskommen, wenn ich Null habe und diese Null gar nicht mit sich selbst multipliziere, als bei den anderen Potenzen - wäre auch ein Argument. Hilft hier aber nicht, denn Festlegung ist Festlegung, und ...


- lange Rede, kurzer Sinn -

... so eine Festlegung bräuchten wir auch für die Berechnung von Datumsdifferenzen. Dann würden wir es wenigstens einheitlich "richtig" oder "falsch" machen, je nach Ansicht, die man dann privat noch vertreten kann wie man will.

Nachdem ich eben noch ´ne gute Stunde gegoogelt habe, bin ich der Lösung auch nicht näher gekommen und mach´ jetzt erstmal Schluss.

Als kleinen Trost noch, wann keine Probleme auftreten. Wenn innerhalb des Zeitraums der erste und der vorletzte Monat die gleiche Anzahl von Tagen haben, dann kann man die Monats- und Tagesdifferenz berechnen wie man will (Nr. 1/Nr. 2) und kommt immer zum selben Ergebnis. (Das ist im Beispiel oben bei April und Mai nicht der Fall.) Das heißt aber auch, wenn der Zeitraum im März endet, kann er beginnen wann er will, die unterschiedlichen Rechnungen führen immer zu unterschiedlichen Ergebnissen bei der Tagesdifferenz.

Schöne Grüße an alle,
holt Eure Lexika, Enzyklopädien und klugen Verwandten und "quetscht" sie aus!
CaroS

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: