Kategorie: Datumsfunktionen

Kalendertabelle – volle 10 Jahre

Warum war ein Monat so umsatzschwach? Wie viele Verkaufstage hat ein Monat? Oder wie sieht mein aktueller Umsatz im Vergleich zum passenden Vorjahreszeitraum aus?

Zahlen sagen nur wenig aus, wenn man sie ohne Kontext betrachtet. Zeitraum, Zeitpunkt, parallel laufende Ereignisse etc.
Zudem sieht der Kalender auch nicht für jeden gleich aus.

Wir betrachten meist das Kalenderjahr – und das schon aus unterschiedlichem Blickwinkel. Für die einen beginnt die Woche am Montag und hat fünf Arbeitstage – für die andere jedoch 6 Verkaufs- und Arbeitstage. Für die einen beginnt die erste Kalenderwoche automatisch am 1. Januar einen Jahres (z. B. in den USA) – für uns in der Woche, in der mehr neue Tage als Tage des alten Jahres sind (also mindestens vier Januartage und somit auch der Donnerstag). Für das eine Unternehmen ist das Wirtschaftsjahr identisch mit dem Kalenderjahr – wenn man sich aber die Geschäftsberichte großer Unternehmen anschaut, beginnt zum Beispiel bei thyssenkrupp das Geschäftsjahr am 1. Oktober eines Jahres und endet am 30. September des Folgejahres. Entsprechend werden auch die Monate anders gezählt. Theater widerum haben neben Kalender- und Geschäftsjahr noch ein zusätzliches Spieljahr … ach ja, Ferien pro Bundesland und abweichende Feiertage gibt es ja auch noch.

Kalendertabellen selbst können Großteils automatisiert errechnet werden. Andere Informationen wie z. B. der Reformationstag aus dem Jahr 2018 und z. B. die Ferien eines Bundeslandes wie Nordrhein-Westfalen müssen manuell ergänzt werden.

In einer neuen Seminarreihe gehe ich auf die Kalendererstellung und Datumsberechnung in Excel selbst, in Power Query mit der eigenen Programmiersprache M, sowie der Erstellung in PowerPivot mit DAX-Funktionen (Data Analysis Expressions) ein. Als i-Tüpfelchen könnte noch die Kalenderberechnung in VBA folgen. Oder schreibt man das mittlerweile iTüpfelchen?

Einige sind ja schon auf mein PDF-Skript gestoßen. Das wird nach und nach fortgeführt: Excel – Datums- und Zeitfunktionen

Auch hatte ich an anderer Stelle schon mal eine Kalendertabelle zur Verfügung gestellt und die Feiertage und Schulferien von NRW ergänzt. Diese Informationen und weitere Ergänzungen gibt es nun zum Download in folgender Excel-Datei (aktualisiert!): Kalendertabelle

Die Datei liegt im XLSX-Format vor und beinhaltet auch Informationen zur Ermittlung von Geschäfts- bzw. Fiskaljahren.

Für alle, die nichts herunterladen wollen oder dürfen, die Spalten enthalten:

  1.  Spalte:   Datum –> Liste manuell gelistet
  2.  Spalte:   Jahr =JAHR([@Datum])
  3.  Spalte:   Monat_kurz =MONAT([@Datum])
  4.  Spalte:   Monat =TEXT([@Datum];“MMMM“)
  5.  Spalte:   Tag Monat =TAG([@Datum])
  6.  Spalte:   Tag Woche =WOCHENTAG([@Datum];2)
  7.  Spalte:   Wochentag =TEXT([@Datum];“TTTT“)
  8.  Spalte:   Tage im Monat =TAG(MONATSENDE(DATUM([@Jahr];[@[Monat_kurz]];1);0))
  9.  Spalte:   KW =KALENDERWOCHE([@Datum];21)
  10.  Spalte:   Quartal =“Q“&AUFRUNDEN([@[Monat_kurz]]/3;0)
  11.  Spalte:   Jahr Quartal =[@Jahr]&“ „&[@Quartal]
  12.  Spalte:   Jahr Monat =TEXT([@Datum];“JJJJ-MM“)
  13.  Spalte:   Halbjahr =WENN([@[Monat_kurz]]<=6;“HJ 1″;“HJ 2″)
  14.  Spalte:   Jahr KW =JAHR([@Datum])-WENN(UND(MONAT([@Datum])=1;
    KALENDERWOCHE([@Datum];21)>51);1;0)+WENN(UND(MONAT([@Datum])=12;
    KALENDERWOCHE([@Datum];21)=1);1;0)&“-„&TEXT(KALENDERWOCHE([@Datum];21);“00“)
  15.  Spalte:   Feiern NRW –> manuell auf WAHR und FALSCH gesetzt
  16.  Spalte:   Feiertage NRW –> manuell auf WAHR und FALSCH gesetzt
  17.  Spalte:   Werktag =WENN([@[Tag Woche]]<=5;“Werktag“;“Wochenende“)
  18.  Spalte:   Verkaufstage Monat NRW =ZÄHLENWENNS([Tag Woche];“<=“&6;[Jahr];JAHR([Datum]);
    [Monat_kurz];MONAT([Datum]);[Feiertag NRW];FALSCH)
  19.  Spalte:   Werktage Monat NRW =ZÄHLENWENNS([Tag Woche];“<=“&5;[Jahr];
    JAHR([Datum]);[Monat_kurz];MONAT([Datum]);[Feiertag NRW];FALSCH)
  20.  Spalte:   FY =rngFYPräfix&WENN(rngStartFiskaljahr=1;[@Jahr];
    WENN([@[Monat_kurz]]<rngStartFiskaljahr;[@Jahr]-1&“/“&RECHTS([@Jahr];2);
    [@Jahr]&“/“&1*RECHTS([@Jahr];2)+1))
  21.  Spalte:   FY M =[@FY]&“ – „&TEXT(WENN([@[Monat_kurz]]<
    rngStartFiskaljahr;12-rngStartFiskaljahr+[@[Monat_kurz]];[@[Monat_kurz]]-rngStartFiskaljahr)+1;“00“)
  22.   Spalte:   FY Q =[@FY]&“ – Q“&AUFRUNDEN((WENN([@[Monat_kurz]]<
    rngStartFiskaljahr;12-rngStartFiskaljahr+[@[Monat_kurz]];
    [@[Monat_kurz]]-rngStartFiskaljahr)+1)/3;0)

Auf dem zweiten Tabellenblatt gibt es zwei Zellen benannte Zellen. Die mit rngStartFiskaljahr benannte Zelle muss auf Werte zwischen 1 und 12 gesetzt werden. Die benannte Zelle rngFYPräfix beinhaltet z. B. „GJ “ für Geschäftsjahr oder „FY “ für fiscal year.

Alle Angaben und Berechnungen sind ohne Gewähr. Also bitte noch einmal prüfen. Vielleicht mag sich auch jemand die Mühe machen und die Feiertage und Ferien für andere Bundesländer eintragen – dies allein war schon irre aufwendig.

So!!! Nun haben wir eine Basis, auf die ich in neuen Videos eingehen werde.
Freue mich auf Feedback bei YouTube und auch Danke an alle, die den Kanal supporten.

Bis bald
Andreas

Immer Ärger mit der KALENDERWOCHE

Es war einmal…

Den 15. September 2016 werde ich wohl immer im Hinblick auf Datumsfunktionen im Gedächtnis behalten!

Ich befand mich an diesem Tag in einem Beratungstermin, während auf einmal das Mobiltelefon meines Kunden klingelte… keine Details… aber da wartete ein verzweifelter Kunde am Hafen einer amerikanischen Metropole auf seine dringend benötigte Ware. Vereinbart gewesen sei Kalenderwoche 38. Entspannte Gesichter… unser dreiteiliger Monatsplaner zeigte für den Tag Kalenderwoche 37 an, die Waren seien gerade in Hamburg.

Jedoch wurde von einer der Parteien bei der Terminabstimmung nicht der kulturelle Unterschied zwischen den USA und Deutschland in der Berechnungsweise der Kalenderwochen bedacht. In den USA war tatsächlich schon Kalenderwoche 38. Bei uns immer noch Kalenderwoche 37.

Inhaltlich wird unsere Kalenderwoche von der ISO 8601[1] bzw. DIN EN 28601 geregelt. Darin ist geklärt, dass eine Woche montags startet und Kalenderwoche 1 diejenige Woche ist, in die der 4. Januar fällt, die also praktisch mehr Tage des neuen Jahres beinhaltet – bzw. wenn in der Woche auch der Donnerstag im neuen Jahr liegt.

DatumISO2

Abb. 1: Kalenderwoche nach DIN EN 28601

In den USA beginnt Kalenderwoche 1 automatisch am 1. Januar – das ist praktisch und leicht zu merken. Der 31. Dezember liegt in Kalenderwoche 52 oder 53. Zudem gibt es zwei Typen von Wochen. Typ 1 zählt eine Woche von Sonntag bis Samstag[2], Typ 2 zählt wie bei uns von Montag bis Sonntag.

DatumISO1

Abb. 2: Kalenderwoche US vs. ISO

Eine Übersicht über die üblichen Arbeitstage eines Landes ist auch bei Wikipedia[3] zu finden. Dass auch der Begriff Woche[4] nicht einheitlich definiert ist, lässt sich dort ebenfalls nachlesen

Zudem werde der Begriff Kalenderwoche im Amerikanischen eher selten genutzt, eher wird die Woche des entsprechenden montags genannt – week of september, 12 anstatt von workweek 38 hätte hier wohl Kommunikationsprobleme vermeiden helfen können.

Das Projekt konnte zum Glück auch mit der Lieferverzögerung weitergeführt werden, hat uns aber etwas ganz deutlich vor Augen geführt:

Ich darf Excel nicht einfach blind vertrauen und muss meine intuitive Nutzung hinterfragen.

Ich muss wissen, mit welchen Grundeinstellungen bzw. Annahmen arbeitet Excel und was bewirken die Parameter der Funktionen.

Die Excel-Funktion KALENDERWOCHE nutzt ohne weiteren Parameter das amerikanische System Typ 1 mit dem Wochenstart auf dem Sonntag.  Typ 2 berechnet die amerikanische Woche ab dem Montag. Nur Paremeter Typ 21 ab Excel 2010 bzw. die seit Excel 2013 eingeführte Funktion ISOKALENDERWOCHE nutzen unsere Kalenderwochenbezeichnung.

Du fragst Dich sicher: Woher soll man denn so etwas wissen?

Alles richtig gemacht! Du bist auf dem richtigen Weg. In diesem Blog möchte ich Dir helfen, Excel-Funktionen korrekt einzusetzen und neue Möglichkeiten abzuwägen.

In einer neuen Reihe gibt es nach und nach sämtliche Zeit- und Datumsfunktionen in Neuauflage dargestellt.

Bis dahin… eine Frohe Weihnachtszeit

Andreas

[1] https://de.wikipedia.org/wiki/ISO_8601

[2] https://de.wikipedia.org/wiki/Sonntag

[3] https://en.wikipedia.org/wiki/Workweek_and_weekend

[4] https://de.wikipedia.org/wiki/Woche