Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Schichtplan mit langen "WENN Abfragen"

Forumthread: Schichtplan mit langen "WENN Abfragen"

Schichtplan mit langen "WENN Abfragen"
21.02.2018 10:55:45
Heiko
Hallo alle miteinander
Ich hoffe ihr könnt mir helfen.
Ich habe die Aufgabe bekommen ein Schichtplanprogramm auf Plausibilität zu prüfen.
Ich habe mir dafür eine Exceltabelle angelegt.
Diese bildet in der ersten Zeile die Zeit gem. TVL ab,
in der 2. Zeile wird die Schicht incl. der Zeit (3. Zeile) eingetragen.
in der 4. Zeile kommt dann die wirklich gemachte Schicht rein und die dazugehörige Zeit wird dann in der 5. Zeile eingetragen.
Jetzt habe ich das Problem, dass es viele verschiedene Bedingungen gibt. Diese sind zum einen, dass die Nachtschicht um 22:00 beginnt - also darf in der Zeitzeile für den Tag nur 2h aufgeführt werden. Bei der letzten Nachtschicht muss am Folgetag 6,25h stehen. Soweit so gut.
Jetzt wird es etwas komplizierter: Urlaub
Bsp: Schichtfolge N N N N
2h 8,25h 8,25h 8,25h 6,25h
bei Urlaub: U U U U
8,25h 8,25h 8,25h 8,25h (Weil nur 4 Tage Urlaub benötigt werden, aber die Zeit gleich sein muss)
Jetzt gibt es natürlich auch noch Früh-, Spät- u. Tagschichten.
Urlaub(U) und Krank(K) werden zeitlich gleich behandelt.
Jetzt gibt es noch bei uns ein gF (gesetzlicher Feiertag) [noch nicht in der Formel enthalten]. Bei diesem Eintrag muss die Zeit der SOLL - Zeile dann auch so in der IST - Zeile stehen. Da ist dann wieder das Problem bei dem Beispiel der Nachtschicht.
Hier mal die von mir bis jetzt zusammengesetzte Formel (funktioniert bis jetzt auch so, wie ich möchte):
----------------------------------------------------------------------------------------------------------------
=WENN(UND(D8="u";C8="N");8,25;WENN(UND(B8="U";B6="N";C8=0);6,25;WENN(UND(D8="u";C6="F");8,75; WENN(UND(D8="u";C6="S");8,5;WENN(UND(D8="u";C6="T");8,55;WENN(C6="U";C7;WENN(UND(C8="N";B8=0);2; WENN(UND(C8="N";B8="N");8,25;WENN(UND(C8=0;B8="N");6,25;WENN(UND(C8="U";C6="N");8,25; WENN(UND(C6="N"; B8="U");2;WENN(UND(C6="N";B8="F");2;WENN(UND(C8="N";B8="S");2;WENN(C8="S";8,5; WENN(C8="F";8,75; WENN(C8="T";8,55;WENN(C8="U";C7;"")))))))))))))))))
-----------------------------------------------------------------------------------------------------------------
Das geht bestimmt auch einfacher, nur weis ich nicht wie oder wonach ich suchen muss um die Formel zu vereinfachen.
Ich habe auch mal eine Bsp - Datei mit angehängt. (https://www.herber.de/bbs/user/119959.zip)
Danke an alle die mir ggf. helfen können.
MfG. Heiko
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schichtplan mit langen "WENN Abfragen"
22.02.2018 07:29:59
Burak
Da sowie der Text als auch die Formel etwas schwer zu lesen ist, versuch funktionsorientiert deine Wünsche zu äußern. Dann kann dir besser geholfen werden.
Also Beispiel:
In Zeile 8 wird die Schicht eingetragen und in der Zelle darunter soll die Arbeitszeit für diese Schicht automatisch eingetragen werden.
Und warum steht in Zelle U9 deines Beispiels kein Wert drin? soll das so sein?
Und verstehe ich das mit der Nachtschicht richtig? Wenn Die Nachtschicht von Montag auf Dienstag geht, wird bei der Soll und Ist-Schicht Zelle für den Montag N eingetragen aber für Dienstag kein N (nur Montag für sich betrachtet), aber die Zeiten werden sowie bei Soll als auch bei Ist für Montag mit 2 stunden und für Dienstag 6,25 Stunden eingetragen?
Anzeige
AW: Schichtplan mit langen "WENN Abfragen"
22.02.2018 08:29:50
MCO
Hallo Heiko!
Nicht alle Konstellationen sind mir klar, nicht alle logisch.
Z.B. hast du vorn in der Formel zum ist-Stunden zählen Stehen wenn ist = "S" und am nächsten Tag "U" dann Zeit 8,75. Später in der Formel steht aber nur wenn ist = "S" dann 8,75. Das Ganze ist 4x so in deiner Formel und damit wird die Formel dann auch etwas sperrig.
Ich habe den ganzen Wust mal auseinandergenommen und jede Bedingung in eine VBA-Funktion eingebaut.
Über Sinn und Unsinn der Einträge kann ich nicht urteilen, es kommen aber die gleichen Zahlen wie bei deiner Formel raus.
In die VBA-Welt gelangst du über STRG+F11.
Die beiden zu ermittelnden Werte sind von mir in den Zeilen 13+14 eingetragen.
https://www.herber.de/bbs/user/119983.xlsm
Viel Erfolg noch!
Gruß, MCO
Anzeige
AW: Schichtplan mit langen "WENN Abfragen"
25.02.2018 16:38:33
Heiko
Hallo MCO
Danke für deine Antwort - ich werde die mal testen und bei Fragen wieder Fragen, bzw. das Ergebnis veröffentlichen.
Gruß Heiko
;
Anzeige
Anzeige

Infobox / Tutorial

Schichtplan mit langen "WENN Abfragen" in Excel erstellen


Schritt-für-Schritt-Anleitung

  1. Erstelle die Grundstruktur:

    • Öffne Excel und erstelle eine neue Tabelle.
    • In der ersten Zeile fügst du die Zeit gemäß TVL ein.
    • In der zweiten Zeile trägst du die Schicht (Früh, Spät, Nacht) ein.
    • In der dritten bis fünften Zeile kommen die Schichten und deren Zeiten.
  2. Formel einfügen:

    • Nutze die folgende Excel-Schichtplan-Formel in der Zelle, wo die Arbeitszeit automatisch berechnet werden soll:
      =WENN(UND(D8="u";C8="N");8,25;WENN(UND(B8="U";B6="N";C8=0);6,25;WENN(UND(D8="u";C6="F");8,75;  WENN(UND(D8="u";C6="S");8,5;WENN(UND(D8="u";C6="T");8,55;WENN(C6="U";C7;WENN(UND(C8="N";B8=0);2;  WENN(UND(C8="N";B8="N");8,25;WENN(UND(C8=0;B8="N");6,25;WENN(UND(C8="U";C6="N");8,25; WENN(UND(C6="N"; B8="U");2;WENN(UND(C6="N";B8="F");2;WENN(UND(C8="N";B8="S");2;WENN(C8="S";8,5; WENN(C8="F";8,75; WENN(C8="T";8,55;WENN(C8="U";C7;"")))))))))))))))))
  3. Bedingungen anpassen:

    • Überprüfe, ob alle Bedingungen für Urlaub (U), Krankheit (K) und Feiertage (gF) korrekt in der Formel abgebildet sind.
    • Achte darauf, dass die Zeiten für Nachtschichten, Frühschichten und Spätschichten richtig berücksichtigt werden.
  4. Testen und Anpassen:

    • Teste die Formel mit verschiedenen Schichtmustern, um sicherzustellen, dass sie unter allen Bedingungen korrekt funktioniert.

Häufige Fehler und Lösungen

  • Fehler: Formel gibt falsche Werte zurück:

    • Überprüfe die Bedingungen in der Formel. Es kann hilfreich sein, die Formel in kleinere Teile zu zerlegen und die Ergebnisse schrittweise zu prüfen.
  • Problem: Zelle bleibt leer:

    • Stelle sicher, dass die Eingabewerte korrekt sind und alle relevanten Zellen die richtigen Daten enthalten (z.B. "N" für Nachtschicht).
  • Schwierigkeiten mit langen Formeln:

    • Es könnte sinnvoll sein, die Formel in mehrere Zellen aufzuteilen oder VBA zu verwenden, um die Komplexität zu reduzieren.

Alternative Methoden

  • VBA zur Vereinfachung:

    • Eine Alternative zur langen WENN-Formel ist die Verwendung von VBA. Mit einem kleinen Skript kannst du die Berechnungen automatisieren, was die Übersichtlichkeit erhöht. Du gelangst zu VBA über STRG + F11.
  • Nutzung von Excel-Schichtplan-Templates:

    • Es gibt viele kostenlose Excel-Vorlagen für Schichtpläne im Internet, die bereits einige der benötigten Formeln enthalten. Suche nach "3 schichtplan vorlage" oder "4 schichtplan muster".

Praktische Beispiele

  • Beispiel für einen 12-Stunden-Schichtplan:

    • Erstelle einen Schichtplan für einen Mitarbeiter, der Früh- und Nachtschichten abwechselnd hat. Du kannst die obige Formel anpassen, um für jede Schicht die Stunden zu berechnen.
  • Vollkontinuierliches Schichtsystem:

    • Stelle einen vollkontinuierlichen Schichtplan in Excel zusammen, indem du die Formel entsprechend anpasst, um alle Wechsel und Urlaubstage zu berücksichtigen.

Tipps für Profis

  • Verwende Named Ranges:

    • Durch die Verwendung von benannten Bereichen kannst du deine Formeln übersichtlicher gestalten und die Wartung erleichtern.
  • Dokumentiere deine Formeln:

    • Füge Kommentare in die Zellen ein, um die Funktionalität der Formeln zu erklären. Dies hilft nicht nur dir, sondern auch anderen Nutzern, die möglicherweise an deinem Workbook arbeiten.
  • Teste regelmäßig:

    • Überprüfe deinen Schichtplan regelmäßig auf Plausibilität, insbesondere nach Änderungen in den Arbeitszeiten oder -bedingungen.

FAQ: Häufige Fragen

1. Wie kann ich einen Schichtplan für mehrere Mitarbeiter erstellen? Du kannst mehrere Tabellenblätter für jeden Mitarbeiter anlegen oder eine umfangreiche Tabelle nutzen, in der du die Mitarbeiter und deren Schichten auflistest.

2. Gibt es eine Vorlage für einen Schichtplan in Englisch? Ja, du kannst im Internet nach "schichtplan englisch" suchen oder Excel-Vorlagen verwenden, die mehrsprachig sind.

3. Wie kann ich Feiertage in meinen Schichtplan integrieren? Du kannst die Formel so anpassen, dass sie Feiertage berücksichtigt, indem du eine zusätzliche Bedingung hinzufügst, die prüft, ob der Tag ein Feiertag ist.

4. Was mache ich, wenn ich eine sehr lange Formel habe? Überlege, die Formel in mehrere Teile aufzuteilen oder die Logik in eine benutzerdefinierte VBA-Funktion zu verschieben, um die Lesbarkeit zu verbessern.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige