Altersberechnung

Bild

Betrifft: Altersberechnung von: Matthias
Geschrieben am: 12.03.2005 01:33:20

Hallo,

ich würde gerne vom Geburtsdatum und einem weiteren Datum (z.B. heute) die Differenz, also das Alter zum 2. Zeitpunkt berechnen und dies in Jahr, Monat, Tag ausgeben.
Z.b. 11.02.1950 und 15.03.2005 ergibt 55 Jahre, 1 Monat, 4 Tage

Wenn ich die beiden Daten jedoch einfach voneinander abziehe stimmen die Werte nicht. Hat jemand eine einfache Lösung?

Danke Matthias

Bild


Betrifft: AW: Altersberechnung von: th.heinrich
Geschrieben am: 12.03.2005 01:46:01

guten morgen Matthias,

folgendes sollte helfen.

https://www.herber.de/index.html?https://www.herber.de/forum/archiv/544to548/t547663.htm

gruss thomas


Bild


Betrifft: AW: Altersberechnung von: Matthias
Geschrieben am: 12.03.2005 01:48:34

Danke! Da wäre ich nie drauf gekommen.

Gruß Matthias


Bild


Betrifft: AW: Ich behaupte... von: FP
Geschrieben am: 12.03.2005 11:10:31

Hallo Thomas,

diese Person ist 32 Jahre, 6 Monate und 12 Tage alt :-)

DATEDIF berechnet Resttage im März falsch

Tabelle1
 ABCD
131.08.1972 3232
212.03.2005 66
3  129
Formeln der Tabelle
C1 : =DATEDIF(A$1;A$2;"Y")
D1 : =DATEDIF(A$1;A$2;"Y")
C2 : =DATEDIF(A$1;A$2;"YM")
D2 : =DATEDIF(A$1;A$2;"YM")
C3 : =REST(TAG(A2)-TAG(A1);MAX(TAG(DATUM(JAHR(A2);MONAT(A2);0));TAG(A1)))
D3 : =DATEDIF(A$1;A$2;"MD")
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  



Servus aus dem Salzkammergut
Franz


Bild


Betrifft: Ich behaupte... von: Josef B
Geschrieben am: 12.03.2005 16:09:58

Hallo Franz

..Auch deine Formel rechnet manchmal falsch.
Hast du deine Formel getestet wenn die Person statt am 31.08.1972, am 28. oder 29. des selbem Monats gebohren ist?

Gruss Josef


Bild


Betrifft: AW: was soll dann sein? von: FP
Geschrieben am: 12.03.2005 16:18:31

Hallo Sepp,

meinst Du das so?

Stimm doch, oder?

Tabelle1
 ABCD
129.03.1972 3232
201.03.2005 1111
3  10
Formeln der Tabelle
C1 : =DATEDIF(A$1;A$2;"Y")
D1 : =DATEDIF(A$1;A$2;"Y")
C2 : =DATEDIF(A$1;A$2;"YM")
D2 : =DATEDIF(A$1;A$2;"YM")
C3 : =REST(TAG(A2)-TAG(A1);MAX(TAG(DATUM(JAHR(A2);MONAT(A2);0));TAG(A1)))
D3 : =DATEDIF(A$1;A$2;"MD")
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  


Servus aus dem Salzkammergut
Franz


Bild


Betrifft: AW: was soll dann sein? von: Josef B
Geschrieben am: 12.03.2005 17:02:43

Hi Franz

Ich meine es kann doch sicher nicht stimmen, wenn die Differenz zwischen 29.03.1972 oder 31.03.1972 und dem 01.03.2005 genau gleich viel Tage ergibt.

Gruss Josef


Bild


Betrifft: AW: dann schau mal... von: FP
Geschrieben am: 12.03.2005 18:33:47

Hallo Sepp,

was DATEDIF macht ;-)

Das Alter in Jahren, Monaten und Tagen ist so ne Sache.

Leider sind die Monate eben nicht gleich lang! Daher kann das Ergebnis nie zu 100% richtig sein...

Aber meine Lösung ist glaube ich trotzdem noch die relativ richtigste :-)

Tabelle1
 ABCD
131.05.1972 3232
201.03.2005 99
3  1-2
Formeln der Tabelle
C1 : =DATEDIF(A$1;A$2;"Y")
D1 : =DATEDIF(A$1;A$2;"Y")
C2 : =DATEDIF(A$1;A$2;"YM")
D2 : =DATEDIF(A$1;A$2;"YM")
C3 : =REST(TAG(A2)-TAG(A1);MAX(TAG(DATUM(JAHR(A2);MONAT(A2);0));TAG(A1)))
D3 : =DATEDIF(A$1;A$2;"MD")
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  


Servus aus dem Salzkammergut
Franz


Bild


Betrifft: AW: dann schau mal... von: Josef B
Geschrieben am: 12.03.2005 19:09:40

Hi Franz

Ich denke die Alternative zu DATEDIF(A$1;A$2;"MD") von:
http://www.excelformeln.de/formeln.html?welcher=141
rechnet da schon etwas genauer als deine Lösung.

Gruss Sepp


Bild


Betrifft: AW: Ein Mensch wurde... von: FP
Geschrieben am: 12.03.2005 21:55:55

Hallo Sepp,

... an einem 13. geboren. Bei der Formel von WF ist er je nachdem, in welchem Monat er geboren wurde, an jeweils dem 13. eines Monats nicht die gleiche Tagesanzahl zusätzlich zu den Jahren und Monaten alt!

Und das ist Deiner Meinung nach genauer ???

Die rot geschriebenen Tage sind meiner Meinung nach falsch:

Tabelle1
 ABCDEFGHI
111.01.197212.03.200511 3321 
212.01.197212.03.200500 3320 
313.01.197212.03.20052730 3312727
428.01.197212.03.20051215 3311212
529.01.197212.03.20051214 3311112
630.01.197212.03.20051213 3311012
731.01.197212.03.20051212 331912
801.02.197212.03.20051111 33111 
911.02.197212.03.200511 3311 
1012.02.197212.03.200500 3310 
1113.02.197212.03.20052728 3302727
1229.02.197212.03.20051212 33011 
1301.03.197212.03.20051111 33011 
1411.03.197212.03.200511 3301 
1512.03.197212.03.200500 3300 
1613.03.197212.03.20052730 32112727
1731.03.197212.03.20051212 32119 
1801.04.197212.03.20051111 321111 
1911.04.197212.03.200511 32111 
2012.04.197212.03.200500 32110 
2113.04.197212.03.20052729 32102727
Formeln der Tabelle
C1 : =REST(TAG(B1)-TAG(A1);MAX(TAG(DATUM(JAHR(B1);MONAT(B1);0));TAG(A1)))
D1 : =TAG(B1)-TAG(A1)+(TAG(A1)>TAG(B1))*TAG(DATUM(JAHR(A1);MONAT(A1)+1;))
F1 : =DATEDIF($A1;$B1;"Y")
G1 : =DATEDIF($A1;$B1;"YM")
H1 : =DATEDIF($A1;$B1;"MD")
C2 : =REST(TAG(B2)-TAG(A2);MAX(TAG(DATUM(JAHR(B2);MONAT(B2);0));TAG(A2)))
D2 : =TAG(B2)-TAG(A2)+(TAG(A2)>TAG(B2))*TAG(DATUM(JAHR(A2);MONAT(A2)+1;))
F2 : =DATEDIF($A2;$B2;"Y")
G2 : =DATEDIF($A2;$B2;"YM")
H2 : =DATEDIF($A2;$B2;"MD")
C3 : =REST(TAG(B3)-TAG(A3);MAX(TAG(DATUM(JAHR(B3);MONAT(B3);0));TAG(A3)))
D3 : =TAG(B3)-TAG(A3)+(TAG(A3)>TAG(B3))*TAG(DATUM(JAHR(A3);MONAT(A3)+1;))
F3 : =DATEDIF($A3;$B3;"Y")
G3 : =DATEDIF($A3;$B3;"YM")
H3 : =DATEDIF($A3;$B3;"MD")
I3 : =B3-DATUM(JAHR(B3);MONAT(B3)-1;MIN(TAG(A3);TAG(DATUM(JAHR(B3);MONAT(B3);0))))
C4 : =REST(TAG(B4)-TAG(A4);MAX(TAG(DATUM(JAHR(B4);MONAT(B4);0));TAG(A4)))
D4 : =TAG(B4)-TAG(A4)+(TAG(A4)>TAG(B4))*TAG(DATUM(JAHR(A4);MONAT(A4)+1;))
F4 : =DATEDIF($A4;$B4;"Y")
G4 : =DATEDIF($A4;$B4;"YM")
H4 : =DATEDIF($A4;$B4;"MD")
I4 : =B4-DATUM(JAHR(B4);MONAT(B4)-1;MIN(TAG(A4);TAG(DATUM(JAHR(B4);MONAT(B4);0))))
C5 : =REST(TAG(B5)-TAG(A5);MAX(TAG(DATUM(JAHR(B5);MONAT(B5);0));TAG(A5)))
D5 : =TAG(B5)-TAG(A5)+(TAG(A5)>TAG(B5))*TAG(DATUM(JAHR(A5);MONAT(A5)+1;))
F5 : =DATEDIF($A5;$B5;"Y")
G5 : =DATEDIF($A5;$B5;"YM")
H5 : =DATEDIF($A5;$B5;"MD")
I5 : =B5-DATUM(JAHR(B5);MONAT(B5)-1;MIN(TAG(A5);TAG(DATUM(JAHR(B5);MONAT(B5);0))))
C6 : =REST(TAG(B6)-TAG(A6);MAX(TAG(DATUM(JAHR(B6);MONAT(B6);0));TAG(A6)))
D6 : =TAG(B6)-TAG(A6)+(TAG(A6)>TAG(B6))*TAG(DATUM(JAHR(A6);MONAT(A6)+1;))
F6 : =DATEDIF($A6;$B6;"Y")
G6 : =DATEDIF($A6;$B6;"YM")
H6 : =DATEDIF($A6;$B6;"MD")
I6 : =B6-DATUM(JAHR(B6);MONAT(B6)-1;MIN(TAG(A6);TAG(DATUM(JAHR(B6);MONAT(B6);0))))
C7 : =REST(TAG(B7)-TAG(A7);MAX(TAG(DATUM(JAHR(B7);MONAT(B7);0));TAG(A7)))
D7 : =TAG(B7)-TAG(A7)+(TAG(A7)>TAG(B7))*TAG(DATUM(JAHR(A7);MONAT(A7)+1;))
F7 : =DATEDIF($A7;$B7;"Y")
G7 : =DATEDIF($A7;$B7;"YM")
H7 : =DATEDIF($A7;$B7;"MD")
I7 : =B7-DATUM(JAHR(B7);MONAT(B7)-1;MIN(TAG(A7);TAG(DATUM(JAHR(B7);MONAT(B7);0))))
C8 : =REST(TAG(B8)-TAG(A8);MAX(TAG(DATUM(JAHR(B8);MONAT(B8);0));TAG(A8)))
D8 : =TAG(B8)-TAG(A8)+(TAG(A8)>TAG(B8))*TAG(DATUM(JAHR(A8);MONAT(A8)+1;))
F8 : =DATEDIF($A8;$B8;"Y")
G8 : =DATEDIF($A8;$B8;"YM")
H8 : =DATEDIF($A8;$B8;"MD")
C9 : =REST(TAG(B9)-TAG(A9);MAX(TAG(DATUM(JAHR(B9);MONAT(B9);0));TAG(A9)))
D9 : =TAG(B9)-TAG(A9)+(TAG(A9)>TAG(B9))*TAG(DATUM(JAHR(A9);MONAT(A9)+1;))
F9 : =DATEDIF($A9;$B9;"Y")
G9 : =DATEDIF($A9;$B9;"YM")
H9 : =DATEDIF($A9;$B9;"MD")
C10 : =REST(TAG(B10)-TAG(A10);MAX(TAG(DATUM(JAHR(B10);MONAT(B10);0));TAG(A10)))
D10 : =TAG(B10)-TAG(A10)+(TAG(A10)>TAG(B10))*TAG(DATUM(JAHR(A10);MONAT(A10)+1;))
F10 : =DATEDIF($A10;$B10;"Y")
G10 : =DATEDIF($A10;$B10;"YM")
H10 : =DATEDIF($A10;$B10;"MD")
C11 : =REST(TAG(B11)-TAG(A11);MAX(TAG(DATUM(JAHR(B11);MONAT(B11);0));TAG(A11)))
D11 : =TAG(B11)-TAG(A11)+(TAG(A11)>TAG(B11))*TAG(DATUM(JAHR(A11);MONAT(A11)+1;))
F11 : =DATEDIF($A11;$B11;"Y")
G11 : =DATEDIF($A11;$B11;"YM")
H11 : =DATEDIF($A11;$B11;"MD")
I11 : =B11-DATUM(JAHR(B11);MONAT(B11)-1;TAG(A11))
C12 : =REST(TAG(B12)-TAG(A12);MAX(TAG(DATUM(JAHR(B12);MONAT(B12);0));TAG(A12)))
D12 : =TAG(B12)-TAG(A12)+(TAG(A12)>TAG(B12))*TAG(DATUM(JAHR(A12);MONAT(A12)+1;))
F12 : =DATEDIF($A12;$B12;"Y")
G12 : =DATEDIF($A12;$B12;"YM")
H12 : =DATEDIF($A12;$B12;"MD")
C13 : =REST(TAG(B13)-TAG(A13);MAX(TAG(DATUM(JAHR(B13);MONAT(B13);0));TAG(A13)))
D13 : =TAG(B13)-TAG(A13)+(TAG(A13)>TAG(B13))*TAG(DATUM(JAHR(A13);MONAT(A13)+1;))
F13 : =DATEDIF($A13;$B13;"Y")
G13 : =DATEDIF($A13;$B13;"YM")
H13 : =DATEDIF($A13;$B13;"MD")
C14 : =REST(TAG(B14)-TAG(A14);MAX(TAG(DATUM(JAHR(B14);MONAT(B14);0));TAG(A14)))
D14 : =TAG(B14)-TAG(A14)+(TAG(A14)>TAG(B14))*TAG(DATUM(JAHR(A14);MONAT(A14)+1;))
F14 : =DATEDIF($A14;$B14;"Y")
G14 : =DATEDIF($A14;$B14;"YM")
H14 : =DATEDIF($A14;$B14;"MD")
C15 : =REST(TAG(B15)-TAG(A15);MAX(TAG(DATUM(JAHR(B15);MONAT(B15);0));TAG(A15)))
D15 : =TAG(B15)-TAG(A15)+(TAG(A15)>TAG(B15))*TAG(DATUM(JAHR(A15);MONAT(A15)+1;))
F15 : =DATEDIF($A15;$B15;"Y")
G15 : =DATEDIF($A15;$B15;"YM")
H15 : =DATEDIF($A15;$B15;"MD")
C16 : =REST(TAG(B16)-TAG(A16);MAX(TAG(DATUM(JAHR(B16);MONAT(B16);0));TAG(A16)))
D16 : =TAG(B16)-TAG(A16)+(TAG(A16)>TAG(B16))*TAG(DATUM(JAHR(A16);MONAT(A16)+1;))
F16 : =DATEDIF($A16;$B16;"Y")
G16 : =DATEDIF($A16;$B16;"YM")
H16 : =DATEDIF($A16;$B16;"MD")
I16 : =B16-DATUM(JAHR(B16);MONAT(B16)-1;TAG(A16))
C17 : =REST(TAG(B17)-TAG(A17);MAX(TAG(DATUM(JAHR(B17);MONAT(B17);0));TAG(A17)))
D17 : =TAG(B17)-TAG(A17)+(TAG(A17)>TAG(B17))*TAG(DATUM(JAHR(A17);MONAT(A17)+1;))
F17 : =DATEDIF($A17;$B17;"Y")
G17 : =DATEDIF($A17;$B17;"YM")
H17 : =DATEDIF($A17;$B17;"MD")
C18 : =REST(TAG(B18)-TAG(A18);MAX(TAG(DATUM(JAHR(B18);MONAT(B18);0));TAG(A18)))
D18 : =TAG(B18)-TAG(A18)+(TAG(A18)>TAG(B18))*TAG(DATUM(JAHR(A18);MONAT(A18)+1;))
F18 : =DATEDIF($A18;$B18;"Y")
G18 : =DATEDIF($A18;$B18;"YM")
H18 : =DATEDIF($A18;$B18;"MD")
C19 : =REST(TAG(B19)-TAG(A19);MAX(TAG(DATUM(JAHR(B19);MONAT(B19);0));TAG(A19)))
D19 : =TAG(B19)-TAG(A19)+(TAG(A19)>TAG(B19))*TAG(DATUM(JAHR(A19);MONAT(A19)+1;))
F19 : =DATEDIF($A19;$B19;"Y")
G19 : =DATEDIF($A19;$B19;"YM")
H19 : =DATEDIF($A19;$B19;"MD")
C20 : =REST(TAG(B20)-TAG(A20);MAX(TAG(DATUM(JAHR(B20);MONAT(B20);0));TAG(A20)))
D20 : =TAG(B20)-TAG(A20)+(TAG(A20)>TAG(B20))*TAG(DATUM(JAHR(A20);MONAT(A20)+1;))
F20 : =DATEDIF($A20;$B20;"Y")
G20 : =DATEDIF($A20;$B20;"YM")
H20 : =DATEDIF($A20;$B20;"MD")
C21 : =REST(TAG(B21)-TAG(A21);MAX(TAG(DATUM(JAHR(B21);MONAT(B21);0));TAG(A21)))
D21 : =TAG(B21)-TAG(A21)+(TAG(A21)>TAG(B21))*TAG(DATUM(JAHR(A21);MONAT(A21)+1;))
F21 : =DATEDIF($A21;$B21;"Y")
G21 : =DATEDIF($A21;$B21;"YM")
H21 : =DATEDIF($A21;$B21;"MD")
I21 : =B21-DATUM(JAHR(B21);MONAT(B21)-1;TAG(A21))
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  


Servus aus dem Salzkammergut
Franz


Bild


Betrifft: AW: Ein Mensch wurde... von: Josef B
Geschrieben am: 13.03.2005 11:34:02

Hallo Franz

Da gibt es sicher verschiedene Standpunkte, wobei man sicher nicht die eine Variante als falsch, und die andere als die einzig Richtige bezeichnen kann. Ich bevorzuge nun einfach die Lösung von Excelformeln.de. Diese berücksichtigt die Länge des Start-Monats bei den Tages-Berechnungen. Mir persönlich ist es nicht logisch, warum die anzahl Tage bei einem Startdatum von: 28.01.1972 oder 31.01.1972, am 01.03.1973 in beiden Fällen 1 Tag sein soll. Ersteres Datum ist doch 3 Tage älter. Also denke ich in diesem Fall sollte die Lösung 1 Monat und 4 Tage sein.

Gruss Josef


Bild


Betrifft: AW: Letzter Versuch und ... von: FP
Geschrieben am: 13.03.2005 18:04:22

... Bitte mir auch das noch logisch zu erklären ;-)

A - Geburt
B - aktuelles Datum

Tabelle2
 ABCDEFGH
128.01.197213.01.20051616 321116
228.01.197213.02.20051616 33016
328.01.197213.03.20051316 33113
428.01.197213.04.20051616 33216
528.01.197213.05.20051516 33315
628.01.197213.06.20051616 33416
7        
828.01.197226.02.20052929 33029
928.01.197227.02.20053030 33030
1028.01.197228.02.200500 3310
1128.01.197201.03.200514 3311
1228.01.197202.03.200525 3312
1328.01.197203.03.200536 3313
Formeln der Tabelle
C1 : =REST(TAG(B1)-TAG(A1);MAX(TAG(DATUM(JAHR(B1);MONAT(B1);0));TAG(A1)))
D1 : =TAG(B1)-TAG(A1)+(TAG(A1)>TAG(B1))*TAG(DATUM(JAHR(A1);MONAT(A1)+1;))
F1 : =DATEDIF($A1;$B1;"Y")
G1 : =DATEDIF($A1;$B1;"YM")
H1 : =DATEDIF($A1;$B1;"MD")
C2 : =REST(TAG(B2)-TAG(A2);MAX(TAG(DATUM(JAHR(B2);MONAT(B2);0));TAG(A2)))
D2 : =TAG(B2)-TAG(A2)+(TAG(A2)>TAG(B2))*TAG(DATUM(JAHR(A2);MONAT(A2)+1;))
F2 : =DATEDIF($A2;$B2;"Y")
G2 : =DATEDIF($A2;$B2;"YM")
H2 : =DATEDIF($A2;$B2;"MD")
C3 : =REST(TAG(B3)-TAG(A3);MAX(TAG(DATUM(JAHR(B3);MONAT(B3);0));TAG(A3)))
D3 : =TAG(B3)-TAG(A3)+(TAG(A3)>TAG(B3))*TAG(DATUM(JAHR(A3);MONAT(A3)+1;))
F3 : =DATEDIF($A3;$B3;"Y")
G3 : =DATEDIF($A3;$B3;"YM")
H3 : =DATEDIF($A3;$B3;"MD")
C4 : =REST(TAG(B4)-TAG(A4);MAX(TAG(DATUM(JAHR(B4);MONAT(B4);0));TAG(A4)))
D4 : =TAG(B4)-TAG(A4)+(TAG(A4)>TAG(B4))*TAG(DATUM(JAHR(A4);MONAT(A4)+1;))
F4 : =DATEDIF($A4;$B4;"Y")
G4 : =DATEDIF($A4;$B4;"YM")
H4 : =DATEDIF($A4;$B4;"MD")
C5 : =REST(TAG(B5)-TAG(A5);MAX(TAG(DATUM(JAHR(B5);MONAT(B5);0));TAG(A5)))
D5 : =TAG(B5)-TAG(A5)+(TAG(A5)>TAG(B5))*TAG(DATUM(JAHR(A5);MONAT(A5)+1;))
F5 : =DATEDIF($A5;$B5;"Y")
G5 : =DATEDIF($A5;$B5;"YM")
H5 : =DATEDIF($A5;$B5;"MD")
C6 : =REST(TAG(B6)-TAG(A6);MAX(TAG(DATUM(JAHR(B6);MONAT(B6);0));TAG(A6)))
D6 : =TAG(B6)-TAG(A6)+(TAG(A6)>TAG(B6))*TAG(DATUM(JAHR(A6);MONAT(A6)+1;))
F6 : =DATEDIF($A6;$B6;"Y")
G6 : =DATEDIF($A6;$B6;"YM")
H6 : =DATEDIF($A6;$B6;"MD")
C8 : =REST(TAG(B8)-TAG(A8);MAX(TAG(DATUM(JAHR(B8);MONAT(B8);0));TAG(A8)))
D8 : =TAG(B8)-TAG(A8)+(TAG(A8)>TAG(B8))*TAG(DATUM(JAHR(A8);MONAT(A8)+1;))
F8 : =DATEDIF($A8;$B8;"Y")
G8 : =DATEDIF($A8;$B8;"YM")
H8 : =DATEDIF($A8;$B8;"MD")
C9 : =REST(TAG(B9)-TAG(A9);MAX(TAG(DATUM(JAHR(B9);MONAT(B9);0));TAG(A9)))
D9 : =TAG(B9)-TAG(A9)+(TAG(A9)>TAG(B9))*TAG(DATUM(JAHR(A9);MONAT(A9)+1;))
F9 : =DATEDIF($A9;$B9;"Y")
G9 : =DATEDIF($A9;$B9;"YM")
H9 : =DATEDIF($A9;$B9;"MD")
C10 : =REST(TAG(B10)-TAG(A10);MAX(TAG(DATUM(JAHR(B10);MONAT(B10);0));TAG(A10)))
D10 : =TAG(B10)-TAG(A10)+(TAG(A10)>TAG(B10))*TAG(DATUM(JAHR(A10);MONAT(A10)+1;))
F10 : =DATEDIF($A10;$B10;"Y")
G10 : =DATEDIF($A10;$B10;"YM")
H10 : =DATEDIF($A10;$B10;"MD")
C11 : =REST(TAG(B11)-TAG(A11);MAX(TAG(DATUM(JAHR(B11);MONAT(B11);0));TAG(A11)))
D11 : =TAG(B11)-TAG(A11)+(TAG(A11)>TAG(B11))*TAG(DATUM(JAHR(A11);MONAT(A11)+1;))
F11 : =DATEDIF($A11;$B11;"Y")
G11 : =DATEDIF($A11;$B11;"YM")
H11 : =DATEDIF($A11;$B11;"MD")
C12 : =REST(TAG(B12)-TAG(A12);MAX(TAG(DATUM(JAHR(B12);MONAT(B12);0));TAG(A12)))
D12 : =TAG(B12)-TAG(A12)+(TAG(A12)>TAG(B12))*TAG(DATUM(JAHR(A12);MONAT(A12)+1;))
F12 : =DATEDIF($A12;$B12;"Y")
G12 : =DATEDIF($A12;$B12;"YM")
H12 : =DATEDIF($A12;$B12;"MD")
C13 : =REST(TAG(B13)-TAG(A13);MAX(TAG(DATUM(JAHR(B13);MONAT(B13);0));TAG(A13)))
D13 : =TAG(B13)-TAG(A13)+(TAG(A13)>TAG(B13))*TAG(DATUM(JAHR(A13);MONAT(A13)+1;))
F13 : =DATEDIF($A13;$B13;"Y")
G13 : =DATEDIF($A13;$B13;"YM")
H13 : =DATEDIF($A13;$B13;"MD")
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  


Servus aus dem Salzkammergut
Franz


Bild


Betrifft: AW: Letzter Versuch und ... von: Josef B
Geschrieben am: 13.03.2005 23:27:54

Hallo Franz

Logisch ist mir das auch nicht, aber wenn im Anfangs und im Enddatum derselbe Tag ist, dann ist das Ergebniss immer Null. Ansonsten werden die fehlenden Tage des Anfangsdatum berechnet.
Hier noch eine kleine Spielerei, um von Enddatum und den errechneten Jahre, Monate und Tage wieder zum Anfangsdatum zu kommen.
=DATUM(JAHR(B1)-F1;MONAT(B1)-G1;TAG(B1)-D1)

Gruss Josef


Bild


Betrifft: AW: Ich hab's versucht... von: FP
Geschrieben am: 14.03.2005 00:36:09

Hallo Sepp,

aber Du willst es nicht verstehen ;-)

Wenn jemand am 28.1.1972 geboren ist, dann ist er:

am 28.2.2005 - 33 Jahre, 1 Monat und 0 Tage alt - ist doch klar, oder?

am 1.3.2005 - 33 Jahre, 1 Monat und 1 Tag alt - und das ist doch auch klar, oder rechnet ihr in der Schweiz anders ? Man kann doch nicht von einem Tag auf den anderen um 4 Tage altern!

Die Formel von WF liefert aber als Ergebnis: 33 Jahre, 1 Monat und 4 Tage - das ist eindeutig falsch!

Es geht hier um das Alter in Jahren, Monaten und Tagen. Und da die Monate nun mal - wie bereits erwähnt - nicht alle gleich viele Tage haben, darf man auch nicht von diesem Ergebnis ( Jahre, Monate und Tage ) zurückrechnen. Das KANN zumindest nicht immer stimmen und dass dies aber bei der Formel von WF immer stimmt, ist der endgültige Beweis, dass seine Formel falsch ist!!!

Das wäre ja eine Rückrechnung à la Datum - (Jahre*360+Monate*30+Tage)...

Zusatzfrage an Dich: 1 Monat nach dem 30.3.2005 ist der 30.6.2005

Welcher Tag ist 1 Monat nach dem 30.1.2005 ???

lt. EDATUM der 28.2.2005 und nicht der 2.3.2005

Ein weiteres Beispiel: 2 Monate vor dem 30.4.2005 ist der ???? - richtig: der 28.2.2005

Und dieser 28.2.2005 liegt eben nicht 2 Monate und 2 Tage vor dem 30.4.2005 ;-)

Servus aus dem Salzkammergut
Franz


Bild


Betrifft: Ich habe dich schon verstanden, aber.... von: Josef B
Geschrieben am: 14.03.2005 13:15:18

Hallo Franz

....wie schon erwähnt schwächelt deine Lösung leider auch noch etwas.
Die Lösung von WF ist genau so richtig oder falsch wie Datedif(x;y;"MD")
Nur sieht die Lösung von WF besser aus weil es da nie Minuszahlen gibt.
Die mit Datedif(x;y;"MD")ermittelten Tage kann man mit der Funktion Datum immer Fehlerfrei
vom Start-Datum hochrechnen.
Eine genaue Berechnung ist meiner Meinung nach nur über die Berechnug der Tage möglich, alles andere ist doch mehr Spielerei.
Ich kann dich beruhigen, in der Schweiz wird man genau so schnell alt wie anderswo auf der Welt.

Gruss Sepp






Bild


Betrifft: Laienhafter Versuch, schaut's euch bitte mal an von: Martin Beck
Geschrieben am: 14.03.2005 17:22:08

Hallo Franz, Hallo Sepp,

wenn die Formelprofis (einschließlich indirekt WF) diskutieren, sollte man sich vielleicht raushalten, aber mich hat die Fragestellung gereizt. Ich habe daher versucht, sie logisch zu durchdenken und dann in Excelformeln zu packen.

M.E. muß man für Datum1 (Dat1) und Datum2 (Dat2) mit D2>D1~f~ 4 Fälle unterscheiden, nämlich:

1.) ~f~Monat(Dat2)>= Monat(Dat1) UND Tag(Dat2) >= Tag(Dat1)~f~
2.) ~f~M(Dat2) < M(Dat1) UND T(Dat2) >= T(Dat1)~f~
3.) ~f~M(Dat2) >= M(Dat1) UND T(Dat2) < T(Dat1)~f~
4.) ~f~M(Dat2) < M(Dat1) UND T(Dat2) < T(Dat1)~f~


Hierfür können dann folgende Formeln verwendet werden (Dat1 steht in A1, Dat2 steht in B1, die Jahresformeln stehen in D1:D4).

1.)

Jahr: ~f~=WENN(UND(MONAT(B1)>=MONAT(A1);TAG(B1)>=TAG(A1));JAHR(B1)-JAHR(A1);"")~f~
Monat: ~f~=WENN(D1<>"";MONAT(B1)-MONAT(A1);"")~f~
Tag: ~f~=WENN(D1<>"";TAG(B1)-TAG(A1);"")~f~


2.)

Jahr: ~f~=WENN(UND(MONAT(B1)<MONAT(A1);TAG(B1)>=TAG(A1));JAHR(B1)-JAHR(A1)-1;"")~f~
Monat: ~f~=WENN(D2<>"";MONAT(B1)+12-MONAT(A1);"")~f~
Tag: ~f~=WENN(D2<>"";TAG(B1)-TAG(A1);"")~f~


3.)

Jahr: ~f~=WENN(UND(MONAT(B1)<=MONAT(A1);TAG(B1)<TAG(A1));JAHR(B1)-JAHR(A1)-1;"")~f~
Monat: ~f~=WENN(D3<>"";MONAT(B1)+12-MONAT(A1)-1;"")~f~
Tag: ~f~=WENN(D3<>"";B1-((TAG(A1)&"."&MONAT(B1)-1&"."&JAHR(B1))*1);"")~f~



4.)

Jahr: ~f~=WENN(UND(MONAT(B1)>MONAT(A1);TAG(B1)<TAG(A1));JAHR(B1)-JAHR(A1);"")~f~
Monat: ~f~=WENN(D4<>"";MONAT(B1)-MONAT(A1)-1;"")~f~
Tag: =WENN(D4<>"";B1-((TAG(A1)&"."&MONAT(B1)-1&"."&JAHR(B1))*1);"")


Ich hoffe, ich habe mich bei der Kopierorgie jetzt nicht vertan. Vielleicht habt ihr Lust, die Formeln zu prüfen und ggf. in einer Formel zusammenzufassen (sollte ja prinzipiell mit einer verschachtelten Wenn-Formel gehen). Zur Erleichterung lade ich mal eine Musterdatei hoch.

https://www.herber.de/bbs/user/19665.xls

Gruß
Martin Beck


Bild


Betrifft: AW: Laienhafter Versuch, schaut's euch bitte mal an von: Josef B
Geschrieben am: 14.03.2005 23:56:18

Hallo Martin

Wenn du von dir von einem Laien sprichst, ist das dann doch mächtig untertrieben.
Es kann sicher nie schaden, wenn sich mehrere Leute melden und ihren Lösungsweg darstellen.
Ich werde mir dein Beispiel näher ansehen, sobald es mir die Zeit erlaubt.

Gruss Sepp


Bild


Betrifft: AW: Und wie gefällt Dir diese WF-Variante? von: FP
Geschrieben am: 14.03.2005 20:11:08

Hallo Sepp,

meine WF-Variante steht in E

Tabelle1
 ABCDE
111.01.197212.03.2005111
212.01.197212.03.2005000
313.01.197212.03.2005273030
428.01.197212.03.2005121515
529.01.197212.03.2005121414
630.01.197212.03.2005121313
731.01.197212.03.2005121212
801.02.197212.03.2005111111
911.02.197212.03.2005111
1012.02.197212.03.2005000
1113.02.197212.03.2005272828
1229.02.197212.03.2005121212
1301.03.197212.03.2005111111
1411.03.197212.03.2005111
1512.03.197212.03.2005000
1613.03.197212.03.2005273030
1731.03.197212.03.2005121212
1801.04.197212.03.2005111111
1911.04.197212.03.2005111
2012.04.197212.03.2005000
2113.04.197212.03.2005272929
Formeln der Tabelle
C1 : =REST(TAG(B1)-TAG(A1);MAX(TAG(DATUM(JAHR(B1);MONAT(B1);0));TAG(A1)))
D1 : =TAG(B1)-TAG(A1)+(TAG(A1)>TAG(B1))*TAG(DATUM(JAHR(A1);MONAT(A1)+1;))
E1 : =REST(TAG(B1)-TAG(A1);TAG(DATUM(JAHR(A1);MONAT(A1)+1;)))
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  


@ "genauer Berechnung nur in Tagen möglich": so ist es!
@ "in der Schweiz wird man genau so schnell alt": - "na Gott sei Dank, dann geht es nicht nur mir so - bin immerhin schon 47! :D:D:D

Servus aus dem Salzkammergut
Franz


Bild


Betrifft: AW: Und wie gefällt Dir diese WF-Variante? von: Josef B
Geschrieben am: 14.03.2005 23:36:36

Hallo Franz

Sieht gut aus, deine Variante, hatte heute aber leider keine Zeit, diese näher zu Testen.
@ "bin immerhin schon 47! :D:D:D"- Du junger Schnaufer, da habe ich glatt 6 Jahre und minus 2 Tage mehr auf dem Buckel.

Gruss Sepp


Bild


Betrifft: AW: rechnet leider falsch, aber... von: FP
Geschrieben am: 16.03.2005 00:16:42

Hallo Sepp,

diese Formel rechnet richtig ( im Sinne von WF ) und ist trotzdem kürzer :-)

Spalte G bzw. U

Tabelle2
 ABCDEFGHIJKLMNOPQRSTU
125.01.197226.02.200411111 3211 25.01.1972 25.02.197228.01.200433333
225.01.197227.02.200422222 3212 25.01.1972 25.02.197229.01.200444444
325.01.197228.02.200433333 3213 25.01.1972 25.02.197230.01.200455555
425.01.197229.02.200444444 3214 25.01.1972 25.02.197231.01.200466666
525.01.197201.03.200455777 3215 25.01.1972 25.02.197201.02.200477555
625.01.197202.03.200466888 3216 25.01.1972 25.02.197202.02.200488666
7                     
828.01.197226.02.20042929292929 32029 28.01.1972 29.02.197228.01.20043030282828
928.01.197227.02.20043030303030 32030 28.01.1972 29.02.197229.01.200400000
1028.01.197228.02.200400000 3210 28.01.1972 29.02.197230.01.200411111
1128.01.197229.02.200411111 3211 28.01.1972 29.02.197231.01.200422222
1228.01.197201.03.200422444 3212 28.01.1972 29.02.197201.02.200433111
1328.01.197202.03.200433555 3213 28.01.1972 29.02.197202.02.200444222
14                     
1531.01.197226.02.20042626262626 32026 31.01.1972 01.02.197228.01.20042727272727
1631.01.197227.02.20042727272727 32027 31.01.1972 01.02.197229.01.20042828282828
1731.01.197228.02.20042828282828 32028 31.01.1972 01.02.197230.01.2004292929029
1831.01.197229.02.20042929292929 32029 31.01.1972 01.02.197231.01.2004303030130
1931.01.197201.03.200411111 321-1 31.01.1972 01.02.197201.02.200400000
2031.01.197202.03.200422222 3210 31.01.1972 01.02.197202.02.200411111
Formeln der Tabelle
C1 : =REST(TAG(B1)-TAG(A1);MAX(TAG(DATUM(JAHR(B1);MONAT(B1);0));TAG(A1)))
D1 : =REST(TAG(B1)-TAG(A1);MAX(TAG(B1-TAG(B1));TAG(A1)))
E1 : =TAG(B1)-TAG(A1)+(TAG(A1)>TAG(B1))*TAG(DATUM(JAHR(A1);MONAT(A1)+1;))
F1 : =REST(TAG(B1)-TAG(A1);TAG(DATUM(JAHR(A1);MONAT(A1)+1;)))
G1 : =TAG(B1)-TAG(A1)+(TAG(A1)>TAG(B1))*(32-TAG(A1+32-TAG(A1)))
I1 : =DATEDIF(A1;B1;"Y")
J1 : =DATEDIF(A1;B1;"YM")
K1 : =DATEDIF(A1;B1;"MD")
M1 : =DATUM(JAHR(B1)-I1;MONAT(B1)-J1;TAG(B1)-E1)
Q1 : =REST(TAG(P1)-TAG(O1);MAX(TAG(DATUM(JAHR(P1);MONAT(P1);0));TAG(O1)))
R1 : =REST(TAG(P1)-TAG(O1);MAX(TAG(P1-TAG(P1));TAG(O1)))
S1 : =TAG(P1)-TAG(O1)+(TAG(O1)>TAG(P1))*TAG(DATUM(JAHR(O1);MONAT(O1)+1;))
T1 : =REST(TAG(P1)-TAG(O1);TAG(DATUM(JAHR(O1);MONAT(O1)+1;)))
U1 : =TAG(P1)-TAG(O1)+(TAG(O1)>TAG(P1))*(32-TAG(O1+32-TAG(O1)))
 
Diagramm - Grafik - Excel Tabellen einfach im Web darstellen    Excel Jeanie HTML  3.0    Download  



Der Clou ist die Formel für die Berechnung des Ultimo bei gegebenem Datum in A1:

=32-TAG(A1+32-TAG(A1))


@ "6 Jahre und -2 Tage" ???

Da fährt es mir gleich durch und durch,
denn Du, mein lieber Josef Burch,
bist, ich rechne nach - ja, es ist wahr,
heut' jung genau 53 Jahr,
und - es ist hier keine Frage,
ganz eindeutig Null Tage ;-)

Dazu ich herzlichst gratulier,
von wo - ach ja, von hier,
und wünsch Dir nur das Allerbeste,
zu Deinem heut'gen Wiegenfeste!!!

Falls Du wissen willst, wann ich geboren bin:

=DATUM(JAHR(HEUTE())-47;MONAT(HEUTE());TAG(HEUTE())-24)

Prost und noch mal alles Gute von Fisch zu Fisch

Servus aus dem Salzkammergut
Franz


Bild


Betrifft: @FP von: Martin Beck
Geschrieben am: 16.03.2005 09:34:16

Hallo Franz,

tust Du mir bitte mal den Gefallen, und schaust Dir meinen Ansatz mal an. Ich möchte eigentlich nur wissen, ob meine grundsätzliche Überlegung richtig ist.

Gruß
Martin Beck


Bild


Betrifft: Genial !!! von: Josef B
Geschrieben am: 16.03.2005 23:12:30

Hallo Franz

Deine Lösung zur Berechnung des Monatsende ist einfach Spitze :-)
Ich konnte erst nicht glauben, dass es dafür so eine einfache Lösung gibt. Aber eben, die Lösung ist einfach aber,
einer muss dann auch noch auf die Idee kommen, dass es so funktionieren könnte.

@ "6 Jahre und -2 Tage" ???

Vielen Dank für das schöne Gedicht
Ich habe das mit mit den minus 2 Tagen aber ironisch gemeint, in Anspielung auf die Formel "Datedif".
Nachfolgende Berechnung ist dann schon genauer:
=DATUM(JAHR(HEUTE())-53;MONAT(HEUTE())+1;TAG(HEUTE())+11)
Da ist dann nicht mehr Fisch, sondern Stier an der Reihe.
Gefreut hat mich dein Gedicht aber trozdem, ich werde es einfach bis zu meinem Geburtstag aufheben.

Gruss Sepp


Bild


Betrifft: AW: Genial !!! von: FP
Geschrieben am: 17.03.2005 00:20:44

Hallo Sepp,

freut mich, wenn Dir mein kleines Gedicht gefallen hat :-)

Vielleicht gefällt Dir auch diese Lösung, für das Tage-Problem:

=DATEDIF(A1;B1;"MD")+MAX(0;TAG(A1)-TAG(B1-TAG(B1)))

Mit dieser kleinen Korrektur der Funktion DATEDIF rechnet diese wieder richtig - in meinem Sinn zumindest :-)

Servus aus dem Salzkammergut
Franz


Bild


Betrifft: AW: kleine Änderung :-) von: FP
Geschrieben am: 16.03.2005 23:01:08

Hallo Sepp,

=REST(TAG(B1)-TAG(A1);MAX(TAG(B1);32-TAG(A1+32-TAG(A1))))

berechnet die Tage à la WF - und diesmal sollte alles passen

=REST(TAG(B1)-TAG(A1);MAX(TAG(B1-TAG(B1));TAG(A1);TAG(B1)))

berechnet die Tage, so wie ich es für richtig halte ;-)

Servus aus dem Salzkammergut
Franz


Bild


Betrifft: AW: Altersberechnung von: rlenz
Geschrieben am: 13.03.2005 14:12:05

Hallo Matthias,
hier meine Zeitdifferenzberechnung: https://www.herber.de/bbs/user/19604.xls

Eine Altersberechnung würde das Alter der im Schaltjahr am 29.Februar geborenen Mitmenschen berücksichtigen. Wer am 29. Februar, also im Schaltjahr (leapyear) geboren ist, hat nach unseren Vorstellungen erst in Nichtschaltjahren (non leapyears) am 01. März Geburtstag. Das ist beim Eintrag des Geburtstages zu beachten, bzw. durch eine separate Spalte mit einer entsprechenden Formel zur Berechnung des rechnerischen Geburtstages zu beachten. Eine Formelerweiterrung tuts natürlich auch. DATEDIF---- einfach und immer vergessen!!

Mit freundlichen Grüßen
Ruediger Lenz
http://www.ruediger-lenz.de
Beachte bitte meine Excel- Seite


Bild


Betrifft: AW: Funktion erstellen von: rlenz
Geschrieben am: 13.03.2005 14:53:06

An meine Excel- Freunde,
wer bitte kann endlich mal tatsächliche Funktionen für die Zeitdifferenzberechnungen in Jahren, nur Monate(n), Monate(n) nach Jahren, Woche(n) nach Monaten und Tage nach Wochen erstellen ohne die fehlerhafte Funktion DATEDIF zu benutzen.
Mit meinen Formeln geht es doch auch, das stelle ich als Anregung hier in dieses Thread.
Hier meine Datei mit den Formeln: https://www.herber.de/bbs/user/19606.xls

Verwechseln Sie bitte nicht eine Zeitdifferenzberechnug mit einer Altersberechnung, bei der das Schaltjahrproblem nicht vergessen werden darf.

Mit freundlichen Grüßen
Ruediger Lenz
http://www.ruediger-lenz.de

P.S. Wenn keine Lösung, dann stelle ich das Problem getrennt ins Forum. Auch dann, wenn im Forum gemeckert wird. Es ist Zeit von der DATEDIF- Funktion Abschied zu nehmen. Die Lösung wird in naher Zeit ohnehin nicht an Förmlichkeiten scheitern. Eine Lösung ist für Excel- User mehr als überfällig!!!


 Bild

Beiträge aus den Excel-Beispielen zum Thema "VBA - doppelte Datensätze aktualisieren"