Jahresberechnung über Start- und Enddatum
#1
Hallo zusammen,

bei meiner aktuellen Tabelle habe ich einen Knoten im Kopf und hoffe, dass mir jemand helfen kann. Ich muss in einer größeren Tabelle (rund 9.000 Zeilen) Spalten für die Jahre 2012 bis 2022 erstellen. Es geht um Arbeitsverträge, die über ein Startdatum und (wenn befristet) ein Enddatum definiert sind. Stichtag für die Zuordnung ist jeweils der 1. April. Pro Jahr soll es eine Spalte geben, die dann mit 1 (=angestellt in dem Jahr) und 0 (=nicht angesellt in dem Jahr) gefüllt wird. Für einzelne Varianten bekomme ich es hin, aber leider nicht für alle und schon gar nicht für alle Varianten in einer Formel Sad 

Beispiel: In 2018 war jemand angestellt, wenn er zwischen dem 1.4.2018 und dem 31.3.2019 einen laufenden Vertrag hatte und erhält in der Spalte 2018 eine 1.

Für die Berücksichtigung der Verträge sind folgende Varianten möglich:
Startdatum und Enddatum umfassen nur einen Zeitraum (z.B. Start = 01.09.2018 und Ende = 31.03.2019, somit nur angestellt im Jahr 2018)
Startdatum und Enddatum umfassen einen größeren Zeitraum (z.B. Start = 01.01.2018 und Ende = 31.12.2021, somit angestellt in den Jahren 2018 bis 2021)
es gibt ein Startdatum und das Enddatum ist leer (z.B. Start = 01.06.2015 und Ende = leer, somit angestellt seit 2015)

Ich denke, damit sollte dann alles abgedeckt sein.

Danke und Grüße
Meenzerin


Angehängte Dateien
.xlsx   Beispiel.xlsx (Größe: 114,67 KB / Downloads: 7)
Antworten Top
#2
Hi,

evtl. so? (s. Mappe)

Gruß Sigi


Angehängte Dateien
.xlsx   Jahresberechnung.xlsx (Größe: 176,13 KB / Downloads: 4)
Antworten Top
#3
Hallo Sigi,

vielen Dank für die schnelle Rückmeldung!

Über Hilfsspalten zu arbeiten hatte ich mir gar nicht überlegt... Warum werden diese drei Monate zurückausgegeben? Ist mir nicht ganz klar geworden.

Wenn jemand über mehrere Jahre angestellt ist, benötige ich für jedes Jahr die 1 in der Spalte. Ich muss am Ende Auswertungen pro Jahr vornehmen und dafür brauche ich diese Jahresspalten.

LG Meenzerin
Antworten Top
#4
Von D2: =--(MAX(;MIN(E$1;$C2)-MAX(D$1;$B2))>0) mit benDefFmt 0;; aus ausfüllen
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
[-] Folgende(r) 1 Nutzer sagt Danke an LCohen für diesen Beitrag:
  • Meenzerin
Antworten Top
#5
Hallo LCohen,



perfekt Smile Das habe ich gesucht.
Antworten Top
#6
Oder auch so, damit es bei einem leeren Endedatum auch schon mit den Jahren größer 2022 funktioniert:

=--(MAX(;MIN(E$1;WENN(ISTLEER($C2);DATUM(2099;12;12);$C2))-MAX(D$1;$B2))>0)


VG Carsten
Antworten Top
#7
Wunderbar!

Nun habe ich die Spalten in meiner Originaltabelle angelegt und es gibt tatsächlich Personen, die nur für einen Tag angestellt werden. Diese werden auf 0 gesetzt. Kann man sie ohne Weiteres integrieren?
Antworten Top
#8
Dann musst Du von >0 auf >1 ändern.
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
Antworten Top
#9
Sicher?

Ich würde auf >=0 ändern wollen ...
Also:
=--(MAX(MIN(E$1;WENN(ISTLEER($C2);DATUM(2099;12;31);$C2))-MAX(D$1;$B2))>=0)

(... und dann funktioniert es auch mit einem Endedatum 01.04.XXXX richtig ...)



VG Carsten
[-] Folgende(r) 1 Nutzer sagt Danke an DbSam für diesen Beitrag:
  • Meenzerin
Antworten Top
#10
Vielen Dank, Carsten, so funktioniert's.

Bei >1 werden Personen, die mit zwei Tagen eingetragen sind auf 0 gesetzt.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste