Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1912to1916
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Schichtplan integrieren

Schichtplan integrieren
20.12.2022 15:42:51
Candy
Hallo liebe Community,
Ich hab jez schon ein paar mal für dieses Projekt um Hilfe gebeten entweder mache ich mir es selbst zu kompliziert oder ich bin einfach unfähig ;)
Hoffe ihr könnt mir noch mal helfen und ich kann dieses Projekt endlich zum Abschluss bringen.
Folgendes:
ich versuche seit Tagen einen Funktionierenden und einfachen Schicht Rhythmus in die Tabelle zu integrieren. (Versuch zu sehen an die Spalte mit S,N,F links neben dem Datum)
habe aber noch keine Lösung dafür gefunden.
Wenn dass Jahr gewechselt wird verschieben sich automatisch die Schichtspalten und müssen somit mühevoll per Hand korrigiert werden.
Bedingte Formatierung für die Färbung der einzelnen Wochen ist leider keine Option, da sich das Schichtmodell Jährlich ändert und ich sonst wieder die Formatierung Jährlich ändern muss.
Ich hab mir das ganze so vorgestellt:
Zum Schichtmodell:
Am besten wäre, dass wenn ich am ersten Arbeitstag des Jahres die erste Wochenschicht definiere. z.B am 1. Arbeitstag in der KW 1 Frühschicht eingebe soll das komplette Jahr automatisch also mit einer einer Eingabe am 1. Arbeitstag des Jahres wochenweiße abwechselnd bis Jahresende 1 Woche Früh, eine Woche Spät eintragen jedoch nur die Wochentage Mo-Fr. Zusätzlich sollen dann die Spalten Wochentag und Datum für die jeweilige Schicht in einer bestimmten Farbe eingefärbt werden (quasi wie jetzt Mo-Fr gelb markiert nur Automatisiert und in 2 Farben für Früh- und Spätschicht damit wäre der großteil des Jahres abgedeckt.
Ich hab zusätzlich noch 2 andere Schichten die möchte ich aber dann gerne jedes Jahr per Hand eintragen da sich der Zeitraum immer ändert.
Zu den Stunden:
Bis jetzt rechnet die Tabelle alle Stunden der Monate zusammen und gibt das Endergebnis für das Jahr als Aktuelle GLZ aus.
Ist es mit einer Formel oder Code möglich die 0,72 Stunden vom Anfang des Jahres nur bis hin zum aktuellem Datum zu Summieren? Somit hätte ich jederzeit die Übersicht über mein derzeit aktuelles Stundenkonto.
Natürlich kann ich versuchen es so zu schreiben dass immer nur bis zum aktuellem Datum die Zahl 0,72 eingetragen wird aber dann geht mir die Berechnung für die vorraussichtliche mögliche Stundenzahl am Ende des Jahres verloren.
Zu der Zahl 0,72:
Die Zahl 0,72 wird durchgehend angezeigt. Ist find ich sehr unübersichtlich wenn es möglich ist nur die Zahl 0,72 in den Zellen unsichtbar zu machen jeder anderer Eintrag soll natürlich sichtbar bleiben.
Ab und zu muss ich durch Überstunden oder Eintrag von Urlaub die Terminspalte mit den 0,72 ändern.
immer wenn ich die Zelle ändere und dann wieder Lösche ist natürlich die Funktion nicht mehr in der Zelle vorhanden und muss nochmal eingetragen werden.
Vll gibt es ja eine Möglichkeit das wenn ich eine Zelle Terminspalte ändere bzw lösche automatisch die alte Formel (=Feiertag(...)) in die Zelle eingetragen wird falls diese nach einer Änderung "Leer" ist?
Das ist hiermit eine Auflistung meiner aktuellen Probleme mit diesem Projekt. Ist wahrscheinlich etwas viel für einen Beitrag wir können gerne erstmal ein Thema angehen und dann stück für stück weiter machen.
Ich würde mich sehr über eure Lösungsvorschläge freuen. Die Tabelle kann natürlich auch geändert werden oder mit zusätzlichen Sheets gearbeitet werden wenn es weiterhilft. Ich bin da sehr offen für individuelle Vorschläge und Veränderungen.
https://www.herber.de/bbs/user/156858.xlsm
Userbild

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: wenn nur Früh- und Spätschicht ...
20.12.2022 16:30:30
neopa
Hallo,
... dann kannst Du mit einer bedingten Formatierung den Schichtplan KW-bezogen abwechselnd durch entsprechende Hintergrundfarbe kennzeichnen und dies auch nur für die Werktage. Und zwar mit folgender Formel in der bed. Formatierungsregel in B4:C34:
=(2-REST(KALENDERWOCHE(C4;21);2))*(REST(B4;7)&gt1)*(SUMME(ZÄHLENWENN(B4;Tab_Feiertage[Datum]))=0)=1 für die Frühschicht
und ... =2 für die Spätschicht.
Deine Feiertage musst Du natürlich noch Jahres dynamisch abhängig definieren (momentan sind sie noch statisch für 2022)
Gruß Werner
.. , - ...
Anzeige
AW: wenn nur Früh- und Spätschicht ...
20.12.2022 16:58:02
Candy
Hey danke der Ansatz könnte klappen.
Wenn ich die Formel so kopiere wird ein Fehler angezeigt muss ich da noch etwas ändern?
ich denke der Tab_Feiertage ist das Problem in der Formel...
Dieser existiert im Sinne gar nicht mehr die Tab ist nur ein Rest von einem versuch sry das hätte ich vll erwähnen müssen.
Den Sheet Einstellungen bzw den Feiertag Tab kannst du komplett ignorieren das ist nur ein Test_Sheet
bei

...(SUMME(ZÄHLENWENN(B4;Tab_Feiertage[Datum]))=0)=1
ist somit der Tab_Feiertage durch meine Erklärung natürlich ein Fehler
Das Thema Feiertage hab ich via VBA mit einer Funktion gelöst. Falls du den Reiter Einstellungen meinst, das ist noch ein alter Stand für Versuche.
Wenn du im Terminfeld reinklickst siehst du, dass die Felder mit der VBA Funktion:

(=Feiertag()) 
belegt sind.
Anzeige
AW: der von Dir angegebene Formelteil ..
20.12.2022 17:14:19
Dir
Hallo Candy,
... müsste ja auch in einer bedingten Formatierung so: = SUMME(ZÄHLENWENN(B4;Tab_Feiertage[Datum])) eingesetzt werden um einen Feiertag zu kennzeichnen . In einer Zellformel in Deiner XL-Version müsste sie als Matrixformel abgeschlossen werden oder so: =SUMMENPRODUKT(ZÄHLENWENN(B4;Tab_Feiertage[Datum])) eingegeben werden.
Ich lade mir prinzipiell XLSM-Dateien aus Foren nur als XLS-Dateien herunter, womit natürlich dann deren Funktionalität verloren geht. Aber ich brauch VBA auch nicht und hier ist VBA auch nicht zwingend notwendig. Du kannst natürlich den entsprechenden Formelteil durch Deine UDF für Feiertage ersetzen.
Gruß Werner
.. , - ...
Anzeige
AW: der von Dir angegebene Formelteil ..
20.12.2022 18:16:55
Dir
Hey Werner,
ich steh grad komplett neben mir..
was haben die Feiertage in der Formel damit zu tun wenn ich mein Schichtmodell kennzeichnen will?
ich hab eine UDF bisher noch nie in eine normale Formel eingebaut... was soll / kann ich jetzt genau machen`?
ich wollte deinen Vorschlag einfach mal probieren vll blick ich dann besser durch.

=(2-REST(KALENDERWOCHE(C4;21);2))*(REST(B4;7)>1)*(SUMME(ZÄHLENWENN(B4;Feiertag[C4]))=0)=1
ist das richtig? --> es kommt eine Fehlermeldung. (Zeichenfehler)
die UDF hab ich bei ...(Zählenwenn(B4;Feiertag(C4) eingetragen. stimmt das soweit? C4 hab ich verwendet da in C4 die Datum angaben sind.
Anzeige
AW: wie geschrieben ...
20.12.2022 18:45:34
neopa
Hallo Candy,
...ich kann es nicht nachvollziehen, da ich Deine Datei ohne den VB-Code nutze.
Was ermittelt denn bei Dir in einer Zelle eingegeben die Formel: =Feiertag[C4] bzw. = Feiertag[B4]?
Übrigens ist mein angegebener Formelteil =SUMMENPRODUKT(ZÄHLENWENN(B4;Tab_Feiertage[Datum])) so umständlich auch gar nicht erforderlich. Sorry.
Völlig ausreichend wäre =ZÄHLENWENN(Tab_Feiertage[Datum];B4) welche an normalen Werktagen eine 0 ermittelt und an Feiertagen eine 1.
Somit reicht als bedingte Formatierungsformel: =(2-REST(KALENDERWOCHE(C4;21);2))*(REST(B4;7)&1)*(ZÄHLENWENN(Tab_Feiertage[Datum];B4)=0)
Gruß Werner
.. , - ...

Anzeige
AW: bekomm es nicht hin ...
21.12.2022 14:24:13
Candy
Hallo Werner,
danke für deine Hilfe aber ich denke mit dieser Formel wird das leider nix...
ich hab versucht die Formel umzusetzen bekomm aber ständig Fehlermeldung Satzzeichen. Oder Ausgabefehler wenn ich versuche sie so umzuschreiben dass die Zeichenreihenfolge passt... liegt wahrscheinlich an der UTF. (Ermittelt Rechnerisch alle Feiertage, gleicht die Daten im Kalender ab und Falls Datum=Feiertag wird der Feiertag in die jeweilige Zelle eingetragen.
Außerdem bin ich immer noch nicht dahinter gekommen was die Feiertage mit meiner Problemstellung zu tun haben.
Sry falls aber ich versteh es einfach nicht...
vll gibt es einen alternativ Lösungsweg
Anzeige
AW: Deiner UDF ist dazu auch ungeeignet ...
21.12.2022 17:42:16
neopa
Hallo Candy,
... warum folgst Du nicht meinen Rat und nutzt meine Vorgabe? Wenn Du Deine Feiertagsliste nicht dynamisch an das jeweilige aktuelle Jahr anpassen kannst oder willst, dann lass es es doch "statisch" wie es ist. Musst Du halt am Anfang eines neuen Jahres einmalig umstellen. Notwendig ist es, weil ansonsten meine Formel für die bedingte Formatierung der beiden Schichten für die Feiertage nicht greifen kann.
Gruß Werner
.. , - ...
AW: Deiner UDF ist dazu auch ungeeignet ...
22.12.2022 14:44:01
Candy
Hallo Werner,
das ist ja genau die Situation die ich vermeiden will jährlich irgentwas anpassen zu müssen. Die Arbeitsmappe wird in Zukunft mit anderen Mappen interagieren und es wird noch einiges dazu kommen deshalb möchte ich dies so automatisiert wie möglich haben ohne dass ich jährlich einige Sachen anpassen muss nur damit die Formeln greifen...
Ok vll hab ich ja einen Denkfehler drinnen oder die Frage wurde nicht verstanden.
Kannst du mir bitte mal erklären warum die Feiertage so wichtig für die Formel bzw für die Schichtbelegung sein soll?
in meinen Gedanken haben die Feiertage rein gar nichts mit dem Schichtmodell zu tun.
ich möchte ja jegendlich:
eine Farbliche Anpassung an mein jeweiliges Schichtmodel dass insgesammt 4 Schichten beinhaltet.
70% im Jahr sind Früh und Spät abwechselt.
die Restlichen 2 Schichten trage ich dann Gerne persönlich per Hand ein da die immer willkürlich im Jahr sind.
Der Schichtanfang im Jahr ist immer verschieden.
Somit wäre es super wenn ich mit möglichst einen Klick oder einer Eingabe zumindest Früh und Spät abwechselt kennzeichnen kann.
Farbliche Kennzeichnung in den Spalten Wochentag (Mo,Die, ...) und Datum ( 01, 02. 03. ...) die gleich daneben steht.
Das Terminfeld mit der Zahl 0,72 kann hierbei komplett unberührt bleiben. Genauso wie die Feiertagseinträge. Da die schon Fertig sind und Formatiert werden.
Dafür sind doch die Feiertage komplett irrelevant oder? Falls nicht dann klär mich bitte auf warum diese notwendig sind.
Tut mir leid falls ich dir auf die Nerven gehe ich bin dir wirklich sehr dankbar für deine Hilfe aber ich muss den Lösungsweg ja auch verstehen und vor allem muss dieser mit meinen Vorstellungen zusammenpassen.
Gruß Candy
Anzeige
AW: hierzu ..
22.12.2022 15:00:54
neopa
Hallo Candy,
... wenn die Früh- und Spätschicht durch bedingte Formatierung gekennzeichnet werden sollen, dann sollten/müssen sinnvollerweise auch die restlichen 2 Schichten derartig gekennzeichnet werden.
Nun zu Deiner Frage: "Kannst du mir bitte mal erklären warum die Feiertage so wichtig für die Formel bzw für die Schichtbelegung sein soll?"
Wenn Du dafür Sorge trägst, dass die bedingte Formatierungsregel für die farblich Kennzeichnung von Feiertagen über der für die Schichtkennzeichnung, dann kann Du den entsprechenden Formelteil in meiner bed. Formatierungsformel einfach weglasssen. Soweit jetzt verständlich(er)?
Gruß Werner
.. , - ...
Anzeige
AW: Schichtsystem funktioniert
23.12.2022 14:21:02
Candy
Hallo Werner
Super Danke für deine Hilfe das Schichtsystem habe ich jetzt soweit hinbekommen :)
könntest du mir bitte bei den anderen 2 Themen auch helfen?
Zu den Stunden:
Bis jetzt rechnet die Tabelle alle Stunden der Monate zusammen und gibt das Endergebnis für das Jahr als Aktuelle GLZ aus.
Ist es mit einer Formel oder Code möglich die 0,72 Stunden vom Anfang des Jahres nur bis hin zum aktuellem Datum zu Summieren? Somit hätte ich jederzeit die Übersicht über mein derzeit aktuelles Stundenkonto.
Natürlich kann ich versuchen es so zu schreiben dass immer nur bis zum aktuellem Datum die Zahl 0,72 eingetragen wird aber dann geht mir die Berechnung für die vorraussichtliche mögliche Stundenzahl am Ende des Jahres verloren.
Zu der Zahl 0,72:
Die Zahl 0,72 wird durchgehend angezeigt. Ist find ich sehr unübersichtlich wenn es möglich ist nur die Zahl 0,72 in den Zellen unsichtbar zu machen jeder anderer Eintrag soll natürlich sichtbar bleiben.
Ab und zu muss ich durch Überstunden oder Eintrag von Urlaub die Terminspalte mit den 0,72 ändern.
immer wenn ich die Zelle ändere und dann wieder Lösche ist natürlich die Funktion nicht mehr in der Zelle vorhanden und muss nochmal eingetragen werden.
Vll gibt es ja eine Möglichkeit das wenn ich eine Zelle Terminspalte ändere bzw lösche automatisch die alte Formel (=Feiertag(...)) in die Zelle eingetragen wird falls diese nach einer Änderung "Leer" ist?

Anzeige
AW: dazu SUMMENPRODUKT() und ...
23.12.2022 15:46:23
neopa
Hallo Candy,
... zusätzlich mit einer bedingte Formatierungsregel.
Zur Summierung der ausgewiesenen 0,72 Stunden bis zum Tag x. Diesen Tag schreibe z.B. in N1 ein. Zum Testen erst einmal ein beliebiger Tag im entsprechenden Jahr und dann einfach =HEUTE()
Die jeweilige Summe bis zum Tag x ergibt sich dann wie folgt:
=SUMMENPRODUKT((C4:AU34&lt=N1)*(REST(SPALTE(C3:AU3);4)=3);D4:AV34)
Die (noch) nicht berücksichtigten Stunden kannst Du mittels bedingter Formatierung "unsichtbar" mach und zwar wie folgt.
Markiere: $D$4:$AV$34 und dann folgende bedingte Formatierungsformel: =ISTZAHL(D4)*(REST(SPALTE();4)=0)*(C4&gt$N$1) und dieser weist Du folgendes benutzerdefiniertes Zahlenformat zu: ;;;
Gruß Werner
.. , - ...
AW: Danke, Perfekt!
25.12.2022 13:30:53
Candy
Hallo Werner
Vielen lieben Dank für die Hilfe !!!
jetzt klappt alles so wie ich es haben wollte.
Dieser Beitrag ist somit abgeschlossen.
AW: zu Früh gefreut
25.12.2022 13:36:06
Candy
so Werner mein Freund ein letzes mal noch mal deine Hilfe bitte hahahaa
hab mich leider zu Früh gefreut also nur eine Kleinigkeit.
Die Zahl 0,72 wird super bis zum Heutigem Datum geschrieben und alles danach ausgeblendet so wie es sein soll.
Nur werden auch alle anderen Zahlen ausgeblendet.
bei überstunden oder Früher gehen von der arbeit muss ich natürlich auch andere Zahlen Zb: +3; -7; ... in die Spalten eingeben die werden aber dann leider ebenfalls ausgeblendet.
Wie kann ich das realisieren dass wirklich nur die Zahl 0,72 ausgeblendet wird? Jede andere eingegebene Zahl würde ich gerne sichtbar haben nur die 0,72 halt unsichtbar
AW: es ist wirklich nur eine Kleinigkeit ...
28.12.2022 10:15:03
neopa
Hallo Candy,
... Du hattest meiner bereits zuletzt angegebenen Formel in der bedingten Formatierung lediglich noch folgende Prüfung anfügen müssen: *(D4=0,72), so dass dann die Bedingungsformel komplett wie folgt lautet: =ISTZAHL(D4)*(REST(SPALTE();4)=0)*(C4&gt$N$1)*(D4=0,72)
Gruß Werner
.. , - ...
AW: Schichtplan integrieren
25.12.2022 13:50:39
snb
Verzichte auf Verbundene Zellen !!!
Verwende in

Function Feiertag(Datum As Date)
Feiertag = 0.72
If Weekday(Datum, 2) > 5 Or Datum > Date Then  Feiertag = ""
End Sub

AW: Abschluss & Danke
25.12.2022 14:02:11
Candy
Das war es Perfekt danke an die Helfer!!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige