430 Aufrufe
Gefragt in Tabellenkalkulation von
Hallo!

Ich möchte im EXCEL Zeiträume zwischen zwei Daten berechnen, wobei es aber mein Ziel ist, dass der Februar IMMER (also auch bei Schaltjahren) nur mit 28 Tagen berechnet wird. - also ich möchte, dass Schaltjahr einfach nicht berücksichtigt werden.

zB beim Zeitraum vom 1.1.2000 bis 4.6.2001 ist ein 29. Feb enthalten, der automatisch weggerechnet werden sollte oder

im Zeitraum von 1.1.2000 bis 4.6.2015 ist viermal der 29. feb enthalten, somit müssten vier tage abgezogen werden.

Gibt es dafür eine halbwegs einfache Lösung?

LG und Danke für die Hilfe!

1 Antwort

0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)
Hallo,

das einfachste dürfte sein, eine eigene Funktion zu schreiben.
Füge das folgende Makro in ein Standard Modul deiner Arbeitsmappe ein:
Public Function DATUMDIF(Anfangsdatum As Date, Enddatum As Date) As Variant
'Berechnet den Unterschied zwischen Anfangsdatum und Enddatum in Tagen ohne den 29. Februar

Dim Anfangsjahr As Long
Dim Endjahr As Long
Dim i As Long
Dim Zaehler As Long

Anfangsjahr = Year(Anfangsdatum)
Endjahr = Year(Enddatum)

'Prüfen, ob der 29. Tag im Februar liegt oder schon der 1. März ist
For i = Anfangsjahr To Endjahr
If Day(DateSerial(i, 2, 29)) = 29 Then Zaehler = Zaehler + 1 'Falls es den 29.02. gibt, wird der Zaehler um 1 erhöht.
Next i

DATUMDIF = DateDiff("d", Anfangsdatum, Enddatum) - Zaehler

End Function

Du kannst in deinem Tabellenblatt dann ganz normal eine Formel nutzen:
=DATUMDIF(B2;D2)
Wobei in B2 das Anfangs- und in D2 das Enddatum steht.

Gruß

M.O.
...