Dabei sind für Teilmonate die tatsächlichen Tage erforderlich und volle Monate zählen
immer mit 30 Tage. Hier einige Beispiele:
1. vom 01.01.2000 bis 29.02.2000 = 60 Tage (2 volle Monate, je 30 Tage)
2. vom 15.01.2000 bis 29.02.2000 = 47 Tage (vom 15.01.2000 bis 31.01.2000 = 17 Tage
und 1 voller Monat)
3. vom 10.10.2000 bis 31.10.2000 = 22 Tage (ein Teilmonat)
4. vom 10.10.2000 bis 15.01.2001 = 97 Tage (vom 10.10.2000 bis 31.10.2000 = 22 Tage,
2 volle Monate und vom 01.01.2001 bis 15.01.2001 = 15 Tage)
Ich habe schon drei Formeln entwickelt (vom-Datum =A1, bis-Datum =B1):
1. Formel in C1
=WENN(ISTFEHLER(DATUM(JAHR(A1);MONAT(A1);TAG(A1))>DATUM(JAHR(B1);MONAT(B1);TAG(B1)));0;WENN(A1="";0;WENN(B1="";0;WENN(DATUM(JAHR(A1);MONAT(A1);TAG(A1))>DATUM(JAHR(B1);MONAT(B1);TAG(B1));0;WENN(MONAT(A1)<>MONAT(B1);WENN(TAG(A1)=1;30;TAG(MONATSENDE(A1;0)-TAG(A1)+1));WENN(TAG(B1)<>TAG(MONATSENDE(B1;0));TAG(B1)-TAG(A1)+1;WENN(TAG(A1)=1;30;TAG(B1)-TAG(A1)+1)))))))
2. Formel in D1
=WENN(ISTFEHLER(DATUM(JAHR(A1);MONAT(A1);TAG(A1))>DATUM(JAHR(B1);MONAT(B1);TAG(B1)));0;WENN(A1="";0;WENN(B1="";0;WENN(DATUM(JAHR(A1);MONAT(A1);TAG(A1))>DATUM(JAHR(B1);MONAT(B1);TAG(B1));0;WENN((MONAT(B1)-MONAT(A1)-1)<0;0;(MONAT(B1)-MONAT(A1)-1)*30)))))
3. Formel in E1
=WENN(ISTFEHLER(DATUM(JAHR(A1);MONAT(A1);TAG(A1))>DATUM(JAHR(B1);MONAT(B1);TAG(B1)));0;WENN(A1="";0;WENN(B1="";0;WENN(DATUM(JAHR(A1);MONAT(A1);TAG(A1))>DATUM(JAHR(B1);MONAT(B1);TAG(B1));0;WENN(MONAT(A1)=MONAT(B1);0;WENN(TAG(B1)=TAG(MONATSENDE(B1;0));30;TAG(B1)))))))
Wenn ich die Ergebnisse addiere, habe ich meine Tage. Dann ist mir jedoch ein Fehler
aufgefallen. Sobald sich der Zeitraum über verschiedene Jahre erstreckt, rechnet Formel 2
nicht mehr. Beim Zeitraum vom 10.10.2000 bis 15.01.2001 werden nur 37 Tage errechnet.
Die vollen Monate Nov. und Dez. werden von Formel 2 nicht berücksichtigt. Das richtige
Ergebnis müsste nämlich 97 Tage lauten.
Auch die folgende Formel rechnet nicht richtig.
=((DATEDIF(A1;B1;"m")-1)*30)+DATEDIF(A1;DATUM(JAHR(A1);MONAT(A1)+1;1)-1;"d")+DATEDIF(DATUM(JAHR(B1);MONAT(B1);1);B1;"d")+2
Hierzu einige Beispiele:
01.01.2000 bis 28.02.2001 = 419 Tage, richtig = 420 Tage, Differenz +1
01.10.1999 bis 15.10.1999 = 16 Tage, richtig = 15 Tage, Differenz -1
01.10.1999 bis 15.01.2000 = 106 Tage, richtig = 105 Tage, Differenz -1
10.10.2000 bis 15.01.2001 = 97 Tage stimmt!!!
10.10.2000 bis 01.01.2001 = 53 Tage, richtig = 83 Tage, Differenz +30 (1Monat)
10.10.2000 bis 31.01.2001 = 113 Tage, richtig = 112 Tage, Differenz -1
10.10.2000 bis 01.03.2001 = 113 Tage, richtig = 143 Tage, Differenz +30 (1Monat)
31.10.2000 bis 28.01.2001 = 59 Tage, richtig = 89 Tage, Differenz +30 (1Monat)
31.10.2000 bis 01.01.2001 = 32 Tage, richtig = 62 Tage, Differenz +30 (1Monat)
02.10.1999 bis 15.10.1999 = 15 Tage, richtig = 14 Tage, Differenz -1
Ich weis im Moment nicht, woran es liegt, vielleicht habe ich einen Black out und sehe vor
lauter Bäume keinen Wald.
Kann mir jemand einen Tipp geben?
Vielen Dank im voraus.
Werner