Zu den häufigsten Anwendungen, die in Excel erstellt werden, gehören sicher die verschiedensten Schichtplaner. Hier wird der Versuch gemacht, mehr oder weniger komplizierte Schichtfolgen in einen Kalender zu übertragen. Eine dafür sehr nützliche Funktion hält Excel füe uns bereit. Es handelt sich um die Funktion =REST(), die im folgenden näher betrachtet werden soll. Als Bespiel dient die folgende Tabelle, in der ein Vierschicht-Betrieb dargestellt ist. Vier Schichten bedeutet, dass sich ein Zyklus über vier Wochen, 4 x 7 Tage = 28 Tage erstreckt. Das wird im Weiteren noch wichtig werden.
Die Funktion REST ist auf den ersten Blick nicht so leicht verständlich. In der Beschreibung von Microsoft steht: "Gibt den Rest einer Division zurück." Davon wird man auch nicht viel schlauer, weil die zugrunde liegende Berechnung doch etwas aufwändiger ist, als eine simple Division.
Die Formel als solche beinhaltet: n - d * INT(n / d) Wobei n für den zu teilenden Wert und d für den Divisor steht. INT ist das Kürzel für Ganzzahl.
Um diese Buchstaben durch Werte zu ersetzen, nehmen wir mal aus der Beispieltabelle, das Datum 01.01.2024. Wie du sicher weißt, steht hinter jedem Excel-Datum eine serielle Zahl, deren Serie am 01.01.1900 mit dem Wert 1 beginnt. Demzufolge steht für den 01.01.2024 der Wert 45292, den werden wir noch brauchen. Es ist bezogen auf die obige Formel der Wert, den wir für den Buchstaben n setzen. Der Wert 28 für den Buchstaben des Divisors (d) ergibt sich aus der Länge des Schichtzyklus, der in deinem Fall 28 Tage beträgt.
Wenn wir nun die obige Formel mit den so gewonnenen Werten befüllen, ergibt sich folgendes Bild: Schlüsselzahl = 45292 - 49 * Ganzzahl ( 45292 / 28 ) , das Ergebnis ist in diesem Fall 16, was zu beweisen ist.
Der Teil INT( n / d ) entspricht Ganzzahl ( 45292 / 49 ) , das Ergebnis lautet 924
Um den Rest zu verstehen, muss man sich an die mathematische Grundregel: Punktrechnung vor Strichrechnung erinnern!
Daraus folgt, wir müssen den Formelteil d * INT( n / d) von n abziehen. ( subtrahieren )
In Zahlen heißt das: 45292 - 49 * 924 , 49 * 45292 ergibt 45276, 45292 - 45276 ergibt, (du ahnst es schon) 16. Da jedem Kalendertag einen anderer serieller Wert zugrunde liegt, bekommt jeder Tag innerhalb eines Zyklus einen anderen Wert zugewiesen. In unserem Fall schwanken die Werte zwischen 0 (hier gibt es sozusagen keinen Rest) bis 27, was bei einem 28-tägigen Zyklus der höchste Wert ist. Danach beginnt alles von vorn. Somit kann man diese Berechnung für jedes beliebige Datum anwenden, es ergibt sich immer die Schlüsselzahl, die aus der Matrix für den SVerweis, die richtigen Inhalte zurück gibt. Man muss also die Schlüssel für die Schichtfolge nur einmal berechnen, sie können immer für jedes beliebige Datum eingesetzt werden. Das alles habe ich mir für den Lösungsvorschlag zunutze gemacht.
Neben der Berechnung von Schichtzyklen, bietet die Funktion =REST() einen weiteren Vorteil, wenn es um die Berechnung von Zeitdifferenzen geht.
Tabelle1
Tabelle1

 ABCDE
1DatumkommtgehtStundenAlt. Formel
2Mo. 01.01.202407:3016:0008:3008:30
3Di. 02.01.202422:0006:00##########08:00

Formeln der Tabelle
ZelleFormel
D2=C2-B2
E2=REST(C2-B2;1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
In der Spalte D der Beispieltabelle habe ich die Zeitdifferenz mit der Formel:=C2-B2 berechnet. Das kann man machen, solange die geht-Zeit größer ist, als die kommt-Zeit. Somit kann man das nur anwenden, wenn die Zeiten nicht über den Tageswechsel laufen, wie das zum Beispiel bei der Nachtschicht der Fall ist. In diesem Fall, kann man das Problem mit der Funktion Rest umgehen. In der Spalte E kann man sehen, dass die Funktion =REST(C2-B2;1) in beiden Fällen das richtige Ergebnis ausgibt.