Hallo, gerade brüte ich über einer Zeiterfassung. Diese soll in
einer Zelle die Sollarbeitszeit enthalten, die sich aus der Anzahl
der Arbeitstage des Monats und der täglichen Arbeitszeit ergibt.
Die Feiertage habe ich in einem extra Tabellenblatt gelistet und
den Bereich "Feiertagsdatum" genannt: Mo., 01.01.2024 Fr.,
08.03.2024 Fr., 29.03.2024 So., 31.03.2024 Mo., 01.04.2024 Mi.,
01.05.2024 Do., 09.05.2024 Mo., 20.05.2024 Do., 03.10.2024 Mi.,
25.12.2024 Do., 26.12.2024 Di., 31.12.2024
Zur Errechnung der Arbeitstage dient im ersten Anlauf die Formel
=NETTOARBEITSTAGE(A3;MONATSENDE(A3;0);Feiertagsdatum;
{1;0;0;0;0;0;1})*8
für eine übliche 40-Stunden-Woche. Das funktioniert soweit, ist
jedoch an einer Stelle etwas unhandlich: da jeder Kollege an
unterschiedlichen Tagen arbeitet (manche Mo-Fr, andere Mo-Do,
usw.) und dazu unterschiedlich viele Stunden täglich, habe ich
diese Angaben ebenfalls in benannte Bereiche ausgegliedert, um die
Anpassung für die einzelnen Kollegen zu vereinfachen. So finden
sich die Tagesarbeitsstunden in einer Zelle Namens
"Fehltag" (historisch bedingt), und die individuellen
Wochenarbeitstage in einem Bereich Namens "Arbeitstage": 2 Montag
3 Dienstag 4 Mittwoch 5 Donnerstag (Hier für eine 4-Tage-Woche)
In A3 steht jeweils der Monatserste. Daraus habe ich für die
Errechnung der Sollarbeitszeit folgende Formel gebastelt:
=NETTOARBEITSTAGE(A3;MONATSENDE(A3;0);Feiertagsdatum;
{ISTFEHLER(SVERWEIS(1;Arbeitstage;1;0));ISTFEHLER(SVERWEIS(2;Arbeitstage;1;0));ISTFEHLER(SVERWEIS(3;Arbeitstage;1;0));ISTFEHLER(SVERWEIS(4;Arbeitstage;1;0));ISTFEHLER(SVERWEIS(5;Arbeitstage;1;0));ISTFEHLER(SVERWEIS(6;Arbeitstage;1;0));ISTFEHLER(SVERWEIS(7;Arbeitstage;1;0))})*Fehltag
Damit dachte ich eigentlich, die richtige Syntax getroffen zu
haben, doch es gibt nur einen Fehler: 539 Auch andere Abwandlungen
mit unterschiedlicher Klammrpositionierung u.ä. habe ich mehr oder
weniger intuitiv durchprobiert, aber außer der Fehlernummer
änderte sich nicht wirklich etwas.
Die Hilfe nennt die Syntax
NETTOARBEITSTAGE(Startdatum; Enddatum [; [Freie Tage];
[Wochenende]])
und als Beispiel
=NETTOARBEITSTAGE(DATUM(2016;9;12);DATUM(2016;9;25);;
{1;0;0;0;1;1;1})
was 6 ergeben soll.
Was mache ich falsch, wie geht es richtig?