Clever-Excel-Forum

Normale Version: Excel Wenn-Verschachtelung
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Guten Tag, ich habe ein Problem mit einer Bearbeitung meines Stunden Nachweis.
Und zwar habe ich vor, eine A-B Woche anhand der Ermittlung der Kalenderwochen zu erstellen, und sie so in meiner Formel mit einzubinden.
Das soll so funktionieren, dass Eine gegebene Formel ausgeführt werden soll für die Woche A, wenn die Kalenderwoche ohne Rest durch 2 teilbar ist, sonst wird die Formel für Woche B berechnet : =WENN((REST(KALENDERWOCHE(A8;2);2)<>0);(formel für woche A);(formel für woche B). Allerdings habe ich damit das Problem, dass zu viele Verschachtelungen von Wenn-Formeln vorhanden sind. 

Ich habe bereits versucht das Problem mit "+" zu umgehen, allerdings nimmt er das + dann ein bisschen zu genau und addiert da komische Zahlen zusammen, was nicht sein sollte.

Woche A : 
=WENN(N8="Feiertag";0;WENN(N8="Krank";SVERWEIS(B8;Stammblatt!$B$8:$C$12;2);WENN(N8="Urlaub";SVERWEIS(B8;Stammblatt!$B$8:$C$12;2);WENN(N8="Fortbildung";SVERWEIS(B8;Stammblatt!$B$8:$C$12;2);WENN(N8="Sonderurlaub";SVERWEIS(B8;Stammblatt!$B$8:$C$12;2);(WENN(B8="SA";0;(WENN(B8="so";0;SVERWEIS(B8;Stammblatt!$B$8:$C$12;2))))))))))


Woche B : 
=WENN(N11="Feiertag";0;WENN(N11="Krank";SVERWEIS(B11;Stammblatt!$B$16:$C$20;2);WENN(N11="Urlaub";SVERWEIS(B11;Stammblatt!$B$16:$C$20;2);WENN(N11="Fortbildung";SVERWEIS(B11;Stammblatt!$B$16:$C$20;2);WENN(N11="Sonderurlaub";SVERWEIS(B11;Stammblatt!$B$16:$C$20;2);(WENN(B11="SA";0;(WENN(B11="so";0;SVERWEIS(B11;Stammblatt!$B$16:$C$20;2))))))))))

Also die selbe Formeln, nur mit einer jeweils anderen Matrix.

Mit SVERWEIS auf die Jeweiligen Formeln auf eine andere Stelle habe ich es auch schon versucht, allerdings gab es da Probleme, die Formel für den ganzen Monat nach unten zu ziehen, da immer nur die Werte in der Formel (z.B. B8) überall übernommen wird und nicht fortlaufend B9, B10,.... . 
Vielen dank schonmal für jegliche Hilfe.
In Feld L8 habe ich meinen Versuch reingeschrieben, was allerdings nicht funktioniert. 
Wenn man nämlich in "Bemerkungen" z.B. "Krank" reinschreibt, verdoppelt er komischerweise die Zahlen und gibt nicht , wie in den anderen Feldern, einfach den Wert unter Netto-Stunden wieder.
Auch wenn man "Feiertag" reinschreibt, leert er die Felder nicht wie bei den anderen Zeilen.


Unter "Formeln" habe ich nochmal die beiden Formeln für Woche A und B reingeschrieben und die für die Kalenderwoche.

Vielen Dank.
heje excelfreunde, cyxcat,

cyxcat, mein vorschlag:

du solltest deinen stundennachweis besser strukturieren und aufbauen

der stundennachweis (tabellenblatt01) besitzt den focus. in diesem tabellenblatt sollten nur noch der betroffene Arbeitnehmer, der erforderliche monat und das jahr ausgewählt werden. dann ein tabellenblatt02 für notwendige berechnungen und tabellenblatt_Januar bis tabellenblatt_Dezember als datencontainer für stunden und nachweistexte....

die gesamte formelei würde meines erachtens viel einfacher ausfallen....
Habs hinbekommen, hab die Formel auf ein wesentliches gekürzt und die Verschachtelung mit den ";" beibehalten anstatt "+".

=WENN((REST(KALENDERWOCHE(A8;2);2)<>0);WENN(N8="Feiertag";0;WENN(ODER(N8="Krank";N8="Urlaub";N8="Fortbildung";N8="Sonderurlaub");SVERWEIS(B8;Stammblatt!$B$8:$C$14;2);WENN(B8="SA";0;(WENN(B8="so";0;SVERWEIS(B8;Stammblatt!$B$8:$C$14;2))))));WENN(N8="Feiertag";0;WENN(ODER(N8="Krank";N8="Urlaub";N8="Fortbildung";N8="Sonderurlaub");SVERWEIS(B8;Stammblatt!$B$16:$C$22;2);WENN(B8="SA";0;(WENN(B8="so";0;SVERWEIS(B8;Stammblatt!$B$16:$C$22;2)))))))

Trotzdem Danke für die Hilfe.