WENN in WENN / Nachtarbeitszeit berechnen
#1
Guten Tag liebe Excel-User,
Ich bin ein weit gereister und nach Hilfe suchender Excel Anfänger, der sich an die Erstellung einer Abreitszeitenrapportierung gewagt hat und es natürlich so automatisiert wie möglich machen möchte, nur verlangt dies natürlich nach einigen Formeln, die ich mir aus dem Internet und diversen Tutorials zusammengesucht habe, die aber leider nicht so zu funktionieren scheinen, wie ich das gerne möchte - insofern stellt sich auch die Frage, ob ich einfach zu viel von Excel erwarte.

Zu meinem Problem: Ich habe zwei Eingabebedürftige Zellen, nehmen wir dazu A1 und A2. in A1 gebe ich den Arbeitsbeginn ein, z.B. 16:00:00 (nach "hh: mm: ss" formatierte Zelle) und in A2 das Arbeitsende, z.B. 03:00:00. Wie ich das alles, auch dezimal, zusammenrechnen lassen kann und dann aufsummiere weiss ich, was ich nun aber möchte ist, dass bei Nachtstunden zwischen 23 und 6 Uhr, eine Zelle mir die Anzahl Nachstunden ausweist, damit ich von dieser Zelle aus weiterrechnen kann (i.c. geht es um einen prozentualen Zeitzuschlag, d.h. ich ziehe die Nachtstunden von der Arbeitsschicht ab, addiere dann die ausgewiesenen Nachstunden inklusive Zeitzuschlag wieder dazu und erhalte dann das Total inklusive Zeitzuschlag.
Diese Nachtstunden möchte ich in A3 haben, dabei gehe ich von folgender Formel aus:

=REST(MIN(6/24;A2)-MAX(A1;23/24)+(A2>A1)*(23/24-A1);1)

Diese Formel zeigt mir dann eigentlich genau wie gewollt, die Anzahl Stunden zwischen 23 und 6 Uhr an. Nur ergibt sich dann ein Problem: Wenn die Abreitszeit die Zeit zwischen 23 und 6 Uhr nicht schneidet, zeigt mir diese Formel einfach 10 Stunden an. Deshalb habe ich eine WENN Formel dazugezogen, mit der Absicht, dass vorallem wenn an einem Tag keine Arbeitszeit eingetragen wird, die Zelle auch leer bleibt bzw 0 anzeigt (lieber wäre mir leer).

=WENN(A1="";"0";"=REST(MIN(6/24;A2)-MAX(A1;23/24)+(A2>A1)*(23/24-A1);1)")

wobei ich anmerken muss, dass beim Dann-Wert eine 0 rein muss, sonst kriegt sie Summierungszelle einen Wertfehler.
Diese Formel funktioniert insofern wunderbar, als dass es bei keinem Eintrag 0 ausgibt, allerdings sobald ich Arbeitszeiten eintrage, wird mir in der Formelzelle nur noch die Formel angezeigt und nichts mehr berechnet.

Ich habe mir dann überlegt, ob ich nicht bei der ersten WENN DANN SONST Formel bei SONST eine weitere WENN Formel einfügen kann? Ich hab es mit ein wenig Gebastel bis jetzt noch  nicht geschafft.
Mein Ziel ist, dass die Zelle A3 bei Arbeitszeiten zwischen 6 Uhr und 23 Uhr leer bleibt, aber die Stunden dazwischen angibt, sobald 23-6 Uhr angeschnitten wird - kann mir da einer aushelfen bitte?  Huh

Also zusammengefasst, A1 Beginn, A2 Ende, A3 Nachtstunden (und dann würde ich in A4 dann die Totalen Stunden berechnen).

VIelen Dank schon einmal für die Mühen, mein Problem überhaupt durchzulesen  :15:

Danke sehr und Grüsse aus der Schweiz!
Top
#2
Hallo,

du übergibst ja auch in deinem Dann Formelteil einen Text, dadurch dass du das in Gänsefüßchen setzt. Zudem übergibst du damit "0" auch Text.

=WENN(A1="";0;REST(MIN(6/24;A2)-MAX(A1;23/24)+(A2>A1)*(23/24-A1);1))

Gruß Werner
[-] Folgende(r) 1 Nutzer sagt Danke an Werner.M für diesen Beitrag:
  • MacGyver
Top
#3
Manchmal sieht man den Wald vor lauter Bäumen nicht... Danke :D

Eine Frage noch: Wie kriege ich es in dieser Formel hin, dass sie *nichts* tut, wenn die Arbeitszeiten zwischen 6:00 und 23:00 Uhr sind? Lustigerweise funktioniert die Formel tadellos, wenn sie 23-6 Uhr anschneidet oder gänzlich darin ist, aber wenn ich z.B. Zeiten von 12 bis 18 Uhr eingebe, ergibt es bei mir 18 Stunden statt 0...

Danke vielmals!
Top
#4
Hallo MacGyver


Zitat:Lustigerweise funktioniert die Formel tadellos, wenn sie 23-6 Uhr anschneidet oder…
 

Bist du dir da sicher?
Was berechnet deine Formel bei Arbeitsbeginn 15:00 bis  Ende 23:30 ?
Hier wird doch auch 23-6 Uhr angeschnitten.

Mein Vorschlag:
=(ANZAHL(A1:A2)=2)*MAX(6/24-A1;0)+MIN(A2-6/24;0)+MAX(A2-23/24;0)+MIN(23/24-A1;0)+(A1>A2)*7/24
 
Gruss Sepp
[-] Folgende(r) 1 Nutzer sagt Danke an Josef B für diesen Beitrag:
  • MacGyver
Top
#5
Das sieht gut aus, ich hab jetzt folgende Formel:

=WENN(A1="";0;(ANZAHL(A1:A2)=2)*MAX(6/24-A1;0)+MIN(A2-6/24;0)+MAX(A2-23/24;0)+MIN(23/24-A1;0)+(A1>A2)*7/24)

und die scheint so zu funktionieren... oder erwartet mich eine böse Überraschung?

Herzlichen Dank für die super Hilfe!
Top
#6
Hallo

Deine Ergänzung mit der Wenn-Formel kannst du dir ersparen, in meinem Vorschlag ist schon alles berücksichtigt.

Gruss Sepp
[-] Folgende(r) 1 Nutzer sagt Danke an Josef B für diesen Beitrag:
  • MacGyver
Top
#7
Noch eine Frage:

Angenommen ich habe in den Zellen A1 bis A5 eine Liste mit den Argumenten "Arbeit", "Ferien", "Nichts"

Kann ich nun in Zelle A6 irgendwie alle "Ferien"-Angaben in A1-A5 zusammenaddieren lassen?

zB:

A1: Arbeit
A2: Ferien
A3: Ferien
A4: Nichts
A5: Ferien
A6: 3

Vielen Dank, meine Versuche mit =WENN(A1;A5="Ferien"; 0; Summe etc) funktionieren nicht.

Gruss
Top
#8
Hast du mal "Zählenwenn" versucht?
Gruß Günter
[-] Folgende(r) 1 Nutzer sagt Danke an gbr für diesen Beitrag:
  • MacGyver
Top
#9
Hallöchen,

wenn Du in Spalte A das Auftreten des Wortes "Ferien" zählen willst, dann nimmst Du dazu ZÄHLENWENN(...)
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • MacGyver
Top
#10
Hallo MacGyver,

also:   =ZÄHLENWENN(A1:A5;"Ferien")
[-] Folgende(r) 1 Nutzer sagt Danke an Excel2010Neuling für diesen Beitrag:
  • MacGyver
Top


Gehe zu:


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