Zeiterfassungstabelle

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Leon777
*
Beiträge: 13
Registriert: Di, 06.03.2007 11:10

Re: Zeiterfassungstabelle

Beitrag von Leon777 »

Hallo AhQ,

danke für den Hinweis :oops: da hab ich den Wald vor lauter Bäumen nicht mehr gesehen!

Die Erklärung zu INDIREKT finde ich sehr gut, jedenfalls denke ich das ich es begriffen habe.
Vielen Dank.

Jetzt funktioniert bis auf eine Formel eigentlich alles. Und bei dieser komme ich nicht mehr weiter.
Der zieht mir ja nun die Feiertage in die Spalte "O" rein. Ich möchte nun wenn es ein gesetzlicher
Feiertag ist daß die Arbeitsstd. auf 0 gesetzt werden.
Hatte in Spalte "D" vorher diese Formel:
=WENN(O17="Urlaub";Urlaub;WENN(O17="Krank";Krank;WENN(O17="½ Urlaub";Urlaubhalb;WENN(O17="Urlaub Zeitkonto";Zeitkonto;WENN(O17="Sonderurlaub";Sonderurlaub;WENN(ISTGERADE(A17);SVERWEIS(C17;Std;2;0);SVERWEIS(C17;Std;3;0)))))))

Ich weiß ist eine etwas lange und besser lösbare Formel, aber sie funktioniert.
Nun möchte ich eigentlich nur das er mir bei den Feiertagen die mit "1" gesetzt sind das er mir dann die Stunden auch auf "0" setzt

habe folgendes probiert:
=WENN(SVERWEIS(B21;Feiertabelle;2;0)=1;Feiertag;WENN(O21="Urlaub";Urlaub;WENN(O21="Krank";Krank;WENN(O21="½ Urlaub";Urlaubhalb;WENN(O21="Urlaub Zeitkonto";Zeitkonto;WENN(O21="Sonderurlaub";Sonderurlaub;WENN(ISTGERADE(A21);SVERWEIS(C21;Std;2;0);SVERWEIS(C21;Std;3;0))))))))

hier funktioniert das mit den Std. auch, aber nur wenn da auch ein Feiertag ist. Bei allen anderen Tagen zeigt er mir dann "#NV" an.
Nun komme ich nicht weiter, bitte um Hilfe.


Grüße Leon
Dateianhänge
Zeiterfassung_neu.ods
(109.49 KiB) 97-mal heruntergeladen
AhQ
*******
Beiträge: 1096
Registriert: Fr, 15.06.2007 11:03
Wohnort: Regensburg
Kontaktdaten:

Re: Zeiterfassungstabelle

Beitrag von AhQ »

hallo Leon,

wenn Du die Formel mal in die Zelle schreibst und sie mit dem Formelassistenten vom Ende her durchklickst, kannst Du sehr schön sehen, welcher Bestandteil Probleme bereitet. Du siehst da immer unten im Eck das Endergebnis und oben im Eck das Teilergebnis edes Formelbestandteils. Da sieht man dann recht bald, daß der erste SVerweis, wenn er das angegebene Datum nicht findet, ein #NV ausspuckt und Dir damit die Formel tötet (außer er findet den Tag als Feiertag, dann gehts natürlich)

Ich hab den Spaß jetzt mal in Folgendes umgeschrieben

=WENN(ISTNV(SVERWEIS(B21;Feiertabelle;2;0));WENN(O21="Urlaub";Urlaub;WENN(O21="Krank";Krank;WENN(O21="½ Urlaub";Urlaubhalb;WENN(O21="Urlaub Zeitkonto";Zeitkonto;WENN(O21="Sonderurlaub";Sonderurlaub;WENN(ISTGERADE(A21);SVERWEIS(C21;Std;2;0);SVERWEIS(C21;Std;3;0)))))));0)

das ISTNV fängt dabei die Fehlermeldung auf, wenn Fehler, also kein Feiertag, dann der ganze Wenn-Schmodder, wenn kein Fehler, dann Feiertag, also die 0, die da so verloren nach rund 200 Klammern am Schluß steht.

Gratulation, daß Du beim Erstellen der Formel nicht durchgedreht bist! :lol:

Viele Grüße
AhQ
Leon777
*
Beiträge: 13
Registriert: Di, 06.03.2007 11:10

Re: Zeiterfassungstabelle

Beitrag von Leon777 »

hallo AhQ,

vielen Dank, nur leider funktioniert der SVERWEIS nicht so wie er gewünscht.
Jetzt macht er mir die Stunden grundsätzlich bei allen Tagen die in der "Feiertabelle" stehen auf 0
Das soll aber nur bei denen mit "1" gekennzeichneten passieren. Die mit "2" sollen ja in der "O" Spalte
angezeigt werden, aber da an diesen gearbeitet wird sollen bei denen die Std. stehen bleiben.

Hatte einiges versucht, z.B. dies =WENN(ISTNV(SVERWEIS(B21;Feiertabelle;2;0))=1; usw. zu lösen, aber da klappt
irgendwie nicht. Komme mir langsam etwas blöde vor, sehe wohl wieder den Wald vor lauter Bäumen nicht.

Was mache ich falsch
AhQ
*******
Beiträge: 1096
Registriert: Fr, 15.06.2007 11:03
Wohnort: Regensburg
Kontaktdaten:

Re: Zeiterfassungstabelle

Beitrag von AhQ »

ok, dann bauen wir an geeigneter Stelle mal noch eine Wenn-Verschachtelung ein, die, wenn es ein Feiertag ist, nach der 1 oder 2 abfrägt, bei einer 1 auf 0 stellt, bei einer 2 nach gerader / ungerader Woche abfrägt und dann die Sollstunden nimmt.

Ist ja nicht kompliziert... :lol: ne, eigentlich nicht kompliziert, aber bisl unübersichtlich. Aber wie ich mal an anderer Stelle feststellte: Mut ist, wenn man Todesangst hat, aber sich trotzdem in den Sattel schwingt. (John Wayne)

Also, kopier mal in April.B17 folgende Formel:

=WENN(ISTNV(SVERWEIS(B17;Feiertabelle;2;0));WENN(O17="Urlaub";Urlaub;WENN(O17="Krank";Krank;WENN(O17="½ Urlaub";Urlaubhalb;WENN(O17="Urlaub Zeitkonto";Zeitkonto;WENN(O17="Sonderurlaub";Sonderurlaub;WENN(ISTGERADE(A17);SVERWEIS(C17;Std;2;0);SVERWEIS(C17;Std;3;0)))))));WENN(SVERWEIS(B17;Feiertabelle;2;0)=1;0;WENN(ISTGERADE(A17);SVERWEIS(C17;Std;2;0);SVERWEIS(C17;Std;3;0))))

Da ist hinten, nach dem ))))))) der ganze Schmodder mit diesen Abfragen, die ich oben beschrieben hab. Damit sollte es funktionieren. Im nächsten Schritt kann man ja mal schauen, ob das auch eleganter geht, oder ob der ganzt große Holzhammer wirklich das feinste Instrument ist. :lol: Aber das darfst Du machen.

Viele Grüße
AhQ

Edit: Juchee, ich seh gerade, der letzte Rest der Formel wird einfach abgeschnitten. Dann nochmal, diesmal aber mit Absätzen, die Du dann wieder rausnehmen solltest:

=WENN(ISTNV(SVERWEIS(B17;Feiertabelle;2;0));WENN(O17="Urlaub";Urlaub;WENN(O17="Krank";Krank;WENN(O17="½ Urlaub";Urlaubhalb;WENN(O17="Urlaub Zeitkonto";Zeitkonto;WENN(O17="Sonderurlaub";Sonderurlaub;WENN(ISTGERADE(A17);SVERWEIS(C17;Std;2;0);SVERWEIS(C17;Std;3;0)))))));
WENN(SVERWEIS(B17;Feiertabelle;2;0)=1;0;WENN(ISTGERADE(A17);SVERWEIS(C17;Std;2;0);SVERWEIS(C17;Std;3;0))))
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Zeiterfassungstabelle

Beitrag von balu »

Hallo Leon,

ich möchte dir in einer Sache das Leben etwas erleichtern.

Also:
In dem Blatt "Zeiten" markierst Du den Bereich von A13 bis F14. Legst den Namen "Abwesend" an (Strg + F3).
Dann schmeißt Du z.B. im Blatt "April" in B17 diese Formel raus (deine Formel),

Code: Alles auswählen

=WENN(O17="Urlaub";Urlaub;WENN(O17="Krank";Krank;WENN(O17="½ Urlaub";Urlaubhalb;WENN(O17="Urlaub Zeitkonto";Zeitkonto;WENN(O17="Sonderurlaub";Sonderurlaub;WENN(ISTGERADE(A17);SVERWEIS(C17;Std;2;0);SVERWEIS(C17;Std;3;0)))))))
und setzt dann diese Formel dafür ein.

Code: Alles auswählen

=WENN(ZÄHLENWENN(Abwesend;O17);WVERWEIS(O17;Abwesend;2;0);WENN(ISTGERADE(A17);SVERWEIS(C17;Std;2;0);SVERWEIS(C17;Std;3;0)))
Wie Funktioniert die Formel?
ZÄHLENWENN sucht nach ob im Blatt "Zeiten" im Bereich $A$13:$F$14 der Suchbegriff aus Zelle O17 (z.B. Urlaub)vorhanden ist. Wenn Ja, dann sucht WVERWEIS in dem gleichen Bereich nach dem Suchbegriff aus Zelle O17 (z.B. Urlaub) und gibt aus der zweiten Zeile (die 2 ist der dritte Parameter) der Suchmatrix $A$13:$F$14 den dazugehörigen Wert zurück.
Und schon ist ein weiterer Schritt richtung "Einfachheit" und "Übersichtlichkeit" getan. :mrgreen:

Ich weiss nicht, ob ich noch dazu kommen werde um mich mit deinem Feiertagsproblem zu beschäftigen. Aber ich denke mir mal das mit meiner neuen Formel dir auch schon etwas geholfen ist.

Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
AhQ
*******
Beiträge: 1096
Registriert: Fr, 15.06.2007 11:03
Wohnort: Regensburg
Kontaktdaten:

Re: Zeiterfassungstabelle

Beitrag von AhQ »

Hallo Balu,

das hätte ich auch noch gerade rausfinden können. Aber kaum steht mal ne Liste nebeneinander und nicht untereinander denkt man nicht mehr an WVERWEIS, sondern an gar nix...

Oh Mann... *ansHirnklopf*

Viele Grüße
AhQ
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Zeiterfassungstabelle

Beitrag von balu »

Hallo AhQ,

mach dir nichts draus. Kommt schon mal vor.Bild
AhQ hat geschrieben: Oh Mann... *ansHirnklopf*
Mach das bloß nicht zu oft, sonst Bild

Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
Antworten