Excel-Wochennummer inkonsistente Ergebnisse

18

Ich verwende eine Tabelle, die die Wochennummer für ein bestimmtes Datum enthält. Nach einigen Recherchen fand ich eine Funktion ISOWEEKNUM (), die ich auf eine Datenspalte anwenden konnte, und dies schien gut zu funktionieren. Ein Auszug aus dieser Tabelle wird unter dem folgenden Link angezeigt:

Auszug aus der Tabelle

Mir ist jedoch aufgefallen, dass die Funktion im Jahr 2018 zusammengebrochen zu sein scheint, wenn die Wochennummer für den 31.12.2014 als Woche 1 angezeigt wird, wenn sie in den Vorjahren immer als Woche 52 oder Woche 53 angezeigt wurde (was für mich sinnvoll ist). .

Es gibt keine anderen Parameter als das Datum für diese Funktion, daher sieht es ziemlich einfach aus. Irgendwelche Gedanken, wie man das zum Laufen bringt?

WPDavid
quelle
4
Eine Woche zählt als Teil des Jahres, in dem der Großteil der Woche liegt.
CodesInChaos

Antworten:

33

Es ist nichts falsch mit Ihrer Formel, aber vielleicht ist es nicht die Formel, die Sie verwenden möchten. Es gibt eine andere Excel-Formel:

=WEEKNUM(serial_num, [return_type])

Das gibt die erwarteten Ergebnisse zurück. Sie sollten jedoch zuerst prüfen, welche Art von Wochennummer für Ihre Anwendung besser geeignet ist.

Lassen Sie mich weiter erklären:

Die Funktion ISOWEEKNUM (Datum) setzt voraus, dass eine Woche immer an einem Montag beginnt und an einem Sonntag endet und setzt dann den Standard, dass die erste Woche des Jahres die Woche ist, die den ersten Donnerstag des Jahres in der Woche enthält. Dies bedeutet, dass die letzten Tage des Vorjahres als Woche 1 des nächsten Jahres bezeichnet werden können.

Die WEEKNUM-Funktion (Datum, Start_Tag) beginnt mit der Woche, die den 1. Januar enthält. Daher ist der 1. Januar der erste Tag von Woche 1. Standardmäßig beginnen neue Wochen am Sonntag, sodass Woche 2 am ersten Sonntag nach dem 1. Januar beginnt. Sie können den Starttag mit dem zweiten Parameter in der Funktion ändern. Mit anderen Worten, die erste Woche kann einen Tag enthalten, wenn der 1. Januar ein Samstag ist und der Standardstarttag verwendet wird. <- das ist das Schlüsselverständnis hinter der Funktion WEEKNUM ().

Ich habe eine kleine Tabelle erstellt, die Ihre Datumswerte enthält und einige weitere hinzufügt, um den Unterschied zu demonstrieren:

Bildbeschreibung hier eingeben

Beachten Sie, dass nicht nur 2018 der letzte Tag im Jahr in der ersten Woche des nächsten Jahres liegt. Die Funktion ISOWEEKNUM () funktioniert einwandfrei. Sie interpretiert nur den Beginn der ersten Woche anders.

Eine andere Möglichkeit, dies zu sehen, ist die Betrachtung der beiden Funktionen über einen Zeitraum von einem Tag, der sich über den ersten Januar erstreckt:

Bildbeschreibung hier eingeben

Im Jahr 2015 ist der erste Januar ein Donnerstag. Die ISOWEEKNUM () - Wochenfunktion umfasst daher die letzten 3 Tage im Dezember, während die WEEKNUM () - Funktion die Woche am ersten Januar startet. Für den Standardstarttag des Sonntags gibt es jedoch nur 3 Tage in der ersten Woche.

Ich hoffe das erklärt den Unterschied.

Clinton
quelle
1
Vielen Dank für Ihr Feedback. Beide Antworten haben geholfen zu verstehen, warum die erhaltene Antwort korrekt war. In der Tat brauchte ich weeknum () für meine Tabelle und wählte deshalb @Clinton als akzeptierte Antwort. Dies hat mir ein klares Verständnis für den Unterschied in den Funktionen gegeben.
WPDavid
17

Die Funktion scheint 2018 zusammenzubrechen, wenn sie die Wochennummer für den 31.12.2008 als Woche 1 anzeigt

Es ist richtig, da der 31. Dezember 2018 ein Montag ist.

Wenn der 31. Dezember an einem Montag, Dienstag oder Mittwoch liegt, ist dies die Woche 01 des nächsten Jahres. Wenn es an einem Donnerstag ist, ist es in Woche 53 des Jahres, das gerade endet; wenn es an einem Freitag in Woche 52 ist (oder 53, wenn das Jahr, das gerade endet, ein Schaltjahr ist); wenn an einem Samstag oder Sonntag, ist es in Woche 52 des Jahres gerade zu Ende.

Quell- ISO-Wochentag - Wikipedia

DavidPostill
quelle
Beschuldige Shanghai, sage ich.
Raystafarian