| klste@hotmail.de |
Flexibler Schichtplaner und Dienstplaner in Excel VBA
Dieses Programm ist nicht an einen bestimmten Schichtplan, wie etwa ein 4-Schicht-System oder ein 3-Schicht-System, gebunden, es erstellt Schicht- oder Dienstpläne jeglicher Art, sodass das Programm ein flexibler Planer ist.
In diesem Programm wird alles über eine Eingabemaske eingegeben. Die Eingabemaske wird auf dem Arbeitsblatt „Maske“ über die Schaltfläche „Maske“ aktiviert.
Die Excel Datei hat 2 weitere Tabellenblätter: „Blatt“ und „Legende“.
Im Tabellenblatt „Legende“ stehen Bezeichnungen von Tätigkeiten dessen Abkürzungen und Code. Jede Abkürzung/Code kann man beliebig formatieren, die Abkürzung/Code wird nachher nur mit der Formatierung übertragen. In dem Tabellenblatt stehen noch Bezeichnungen von Arbeitsplätzen, Bezeichnungen der Abteilungen und Namen von Mitarbeiter.
Das Arbeitsblatt „Blatt“ kann Daten aus 4 Auswertungen enthalten: „Kalender“, „Abteilung_Ausgewählter Mitarbeiter“, „Arbeitsplatz“ und „Ausgewählte Abteilung“.
Ein Tätigkeitskürzel wird nur eingetragen bzw. entfernt, wenn 5 Koordinaten ausgewählt sind; Monat, Datum oder Woche, Abteilung, Mitarbeiter und Arbeitsplatz.
Einträge erfolgen für den ausgewählten Tag oder für die gesamte ausgewählte Woche.
Die ausgewählten Konten sieht man im Listenfeld.
Ansichten werden über drei Kontrollkästchen ausgewählt: „Abteilung_Ausgewählter Mitarbeiter“, „Arbeitsplatz“, „Ausgewählte Abteilung“, wobei das Listenfeld für jedes Kontrollkästchen eine andere Farbe hat.
Mit Schaltfläche „Blatt“ wird jedes ausgewähltes Konto im Tabellenblatt gezeigt.
Wenn Jahr zu Ende ist, wird Datenbank mit Schaltfläche „Datenbank löschen“ gelöscht. Kennwort zum Löschen ist die Zahl 3.
Mit der Schaltfläche „Jahr wechseln“ wird ein Kalender für ein beliebiges Jahr erstellt.
Tabellenblatt „Legende“. Flexibler Schichtplaner und Dienstplaner in Excel VBA
Im Tabellenblatt „Legende“ in Spalte „A“ stehen Bezeichnungen von Tätigkeiten und in Spalte „B“ stehen Abkürzungen und Code von den Tätigkeiten. Anzahl der Tätigkeiten ist nicht begrenzt. Jede Abkürzung/Code kann man beliebig formatieren, die Abkürzung/Code wird nachher nur mit der Formatierung übertragen. Die Bezeichnungen von Tätigkeiten mit Abkürzung/Code sollten viele Informationen enthalten, damit man später bei der Auswertung sofort erkennen kann, wo und was der ausgewählte Mitarbeiter getan hat oder tun wird.
In Spalte „C“ stehen Bezeichnungen von Arbeitsplätzen. Programm bearbeitet nur die Arbeitsplätze, welche in Bereich C2:C101 stehen.
Im Bereich von D1 bis W1 stehen Bezeichnungen von 20 Abteilungen. Programm bearbeitet nur die 20 Abteilungen.
In jeder Abteilung kann bis zu 100 Mitarbeiter sein, die alle im Bereich D2:W101 stehen. Programm bearbeitet Mitarbeiter nur aus dem Bereich.
Eintragen in die Datenbank. Flexibler Schichtplaner und Dienstplaner in Excel VBA
In diesem Programm wird alles über eine Eingabemaske eingegeben. Die Eingabemaske wird auf dem Arbeitsblatt „Maske“ über die Schaltfläche „Maske“ aktiviert.
Ein Tätigkeitskürzel wird nur eingetragen bzw. entfernt, wenn 5 Koordinaten ausgewählt sind; Monat, Datum oder Woche, Abteilung, Mitarbeiter und Arbeitsplatz.
Einträge erfolgen für den ausgewählten Tag oder für die gesamte ausgewählte Woche.
Auf der erscheinende blaue Schaltfläche steht der ausgewählter Zeitabschnitt.
Erfolgt die Eintragung für die ganze Woche, dann erfolgt die Eintragung von Montag bis Freitag, für Samstag und Sonntag erfolgt die Eintragung nicht wochenweise, für diese Tage sollte jeweils für ein Tag eingetragen werden.
Wenn Tätigkeit ausgewählt ist wird Abkürzung/Code von der Tätigkeit eingetragen, wenn Tätigkeit nicht ausgewählt ist, zuvor eingetragenen Daten werden gelöscht.
Jede Abkürzung/Code sollte wie gewünscht formatiert sein, die Abkürzung/Code wird nachher nur mit der Formatierung übertragen.
Eingetragen wird in drei Konten: „Abteilung_Ausgewählter Mitarbeiter“, „Arbeitsplatz“ und „Ausgewählte Abteilung“.
Das Konto „Abteilung_Ausgewählter Mitarbeiter“ enthält nur Daten für den ausgewählten Mitarbeiter.
An einem „Arbeitsplatz“ können nur 20 Mitarbeiter für einen Monat eingetragen werden. Das Konto „Arbeitsplatz“ enthält nur Daten über eingetragene Mitarbeiter.
Das Konto „Ausgewählte Abteilung“ enthält Daten über alle Mitarbeiter, welche im Tabellenblatt „Legende“ für die Abteilung eingetragen sind.
Ein kleines Beispiel. In Woche 40 sind für Anlage1 ein Maschinenführer, ein Maschinenbediener und ein Verpacker für die Nachtschicht vorgesehen. Die ersten und zweiten Maschinenführern, Maschinenbedienern und Verpacker sind bereits für die Früh- und Spätschicht eingeplant. Für die Nachtschicht sind daher weitere Maschinenführer, Maschinenbediener und Verpacker angemeldet. Woche 40 beginnt am 30. September und endet am 4. Oktober. Daher wird der 30. September als ein Tag und der Rest der Woche im Oktober als eine Woche eingetragen wird.
Auswertung der eingetragenen Daten. Flexibler Schichtplaner und Dienstplaner in Excel VBA
Die ausgewählten Konten sieht man im Listenfeld.
Ansichten werden über drei Kontrollkästchen ausgewählt, wobei das Listenfeld für jedes Kontrollkästchen eine andere Farbe hat. Im Listenfeld wird die Breite der Spalten entsprechend der Länge der eingegebenen Daten angepasst, wenn die Farbe des Listenfelds weiß oder gelb ist.
Durch einen Doppelklick mit der linken Maustaste in der Listenbox wird das Datum ausgewählt, welches im Kombinationsfeld „Datum“ eingetragen wird.
Die Checkbox „Abteilung_Ausgewählter Mitarbeiter“ zeigt das Konto des Mitarbeiters in der weißen Liste an.
Das Kontrollkästchen „Arbeitsplatz“ zeigt das Arbeitsplatzkonto in der gelben Liste an.
Das Kontrollkästchen „Ausgewählte Abteilung“ zeigt alle Mitarbeiterkonten der ausgewählten Abteilung in einer grünen Liste an.
Die Liste zeigt immer nur Daten für den ausgewählten Monat an.
Unten der drei Checkbox ist Schaltfläche „Blatt“. Die hat immer solche Farbe wie ausgewählte Checkbox. Mit der Schaltfläche „Blatt“ wird im Tabellenblatt „Blatt“ Jahresablauf vom ausgewählten Konto erstellt.
Im Jahresablauf für „Abteilung_Ausgewählter Mitarbeiter“ sind die Spalten A bis D der Kalender und in Spalte E am Anfang des Monats steht der Name des Mitarbeiters. Unten sind die für dieses Konto eingegebenen Abkürzungen/Codes aufgeführt. In Monaten, in denen nichts eingetragen wurde, gibt es am Monatsanfang keinen Mitarbeiternamen. Die rechte Kopfzeile enthält den Namen des Mitarbeiters und die Seitenanzahl. Abkürzungen/Codes geben an, wo und was der eingetragene Mitarbeiter getan hat oder tun wird.
Im Jahresablauf für „Arbeitsplatz“ sind die Spalten A bis D der Kalender und von Spalte E bis Spalte X stehen am Monatsanfang die eingetragenen Mitarbeiter (nicht mehr als 20 pro Monat), da drunter stehen die eingegebenen Abkürzungen/Codes für jedes Mitarbeiter. Die rechte Kopfzeile enthält Bezeichnung des Arbeitsplatzes und die Seitenanzahl. Abkürzungen/Codes geben an, wo und was die eingetragenen Mitarbeitern getan haben oder tun werden.
Im Jahresablauf für „Ausgewählte Abteilung“ sind die Spalten A bis D der Kalender und von Spalte E bis Spalte CZ am Anfang jedes Monats stehen zu der Abteilung gehörenden Mitarbeitern, da drunter stehen die eingegebenen Abkürzungen/Codes für jeden Mitarbeiter. Die rechte Kopfzeile enthält Bezeichnung der Abteilung. Abkürzungen/Codes geben an, wo und was die Mitarbeitern getan haben oder tun werden.
Jahr wechseln. Flexibler Schichtplaner und Dienstplaner in Excel VBA
Vor dem Jahr wechseln oder nach dem Jahr wechseln sollt man mit Schaltfläche „Datenbank löschen“ alle gesammelte Daten in Datenbank löschen. Kennwort für Löschen ist die Zahl 3.
Mit der Schaltfläche „Jahr wechseln“ wird in dem Programm ein Kalender für ausgewähltes
Jahr mit beweglichen und festen Feiertagen erstellen. Anzahl und Namen der festen Feiertage bestimmt der User selber. Höchstens können 15 feste Feiertage vergeben werden. Das Programm hat eine Liste von 10 beweglichen Feiertagen. In der Checkbox von gesetzlichen Feiertagen soll Hacken gesetzt werden.
Klicken Sie auf die Schaltfläche „Übernehmen“, geben Sie eine vierstellige Jahreszahl in das Eingabefeld ein und klicken Sie auf „OK“. Der Kalender wird erstellt.
Die gesetzlichen Feiertage haben im Kalender rote Hintergrundfarbe.
Besonderheit in dem Programm. Flexibler Schichtplaner und Dienstplaner in Excel VBA
In diesem Programm ist das Tabellenblatt „Legende“ eine Datenbank, Daten in dieser Datenbank werden direkt in diesem Tabellenblatt eingegeben oder geändert.
Die Daten aus diesem Tabellenblatt werden aktiv in der Eingabemaske verwendet.
Beim Erstellen eines Jahresablaufs wird die Eingabemaske ausgeblendet und auf dem Tabellenblatt „Blatt“ wird der Jahresablauf des ausgewählten Kontos erstellt.
Ändert sich in dieser Zeit etwas im Tabellenblatt „Legende“, wird diese Änderung vom Programm übernommen.
Dieses Programm ist so programmiert, dass diese Änderungen nicht zum Absturz der Excel-Datei führen.
Regionales Format. Flexibler Schichtplaner und Dienstplaner in Excel VBA
Wenn das Regionales Format geändert wird, erscheint beim Aktivieren der Eingabemaske eine Meldung: „Die Spracheinstellungen haben sich geändert, die Namen der Monate und Wochentage sind jetzt anders als vermutlich eingetragen. Damit das Programm fehlerfrei funktioniert, muss das Jahr erneut geändert werden“.
Nach dem Jahreswechsel passt sich der Kalender an das Format der Region an und die Meldung erscheint nicht mehr.
Einstellungen für ActiveX-Steuerelemente. Flexibler Schichtplaner und Dienstplaner in Excel VBA
Wenn die Schaltfläche „Maske“ nicht funktioniert, sollten Sie ActiveX-Steuerelemente aktivieren.
Klicken Sie auf Datei, Optionen.
Klicken Sie auf Sicherheitscenter, Einstellungen für das Sicherheitscenter, ActiveX-Einstellungen.
Folgende Einstellungen müssen aktiv sein:
Eingabeaufforderung anzeigen, bevor alle Steuerelemente mit minimalen Einschränkungen aktiviert werden.
Abgesicherter Modus
Die Excel-Datei sollte gespeichert und geschlossen werden.
Sobald die Excel-Datei geladen ist, funktioniert die Schaltfläche.

