PQ: ISO-Kalenderwoche

ISO-Kalenderwoche in Power Query

Zurzeit (Ende 2017) ist es nicht direkt möglich, eine der europäis­che Norm entsprechende Kalen­der­woche nach ISO 8601 in Pow­er Query zu ver­wen­den. Im Nor­mal­fall wer­den sie wahrschein­lich den Weg gehen, dass sie in der Excel-Tabelle eine Hil­f­ss­palte mit der Formel =KALENDERWOCHE(A2;21) oder in neueren Excel-Ver­sio­nen auch die Funk­tion ISOKALENDERWOCHE() erstellen und diesen Wert/diese Spalte in die Pow­er Query-Abfrage übernehmen. Eine ähn­liche wenn auch deut­lich aufwändi­gere Funk­tion wer­den sie in Excel ver­wen­den, wenn sie nicht nur die Kalen­der­woche, son­dern auch das entsprechende Jahr mit angeben wollen. So entspricht beispiel­sweise der 31.12.2007 der KW 1/2008 oder der 3.1.2016 ist KW 532015.

Dieses Vorge­hen mit der Zusatzs­palte ist legit­im. Wenn Sie ‑aus welchen Grün­den auch immer- in Pow­er Query auf solch eine Excel-Hil­f­ss­palte verzicht­en wollen, dann müssen Sie sich dort entwed­er eine entsprechende Funk­tion sel­ber schreiben oder im Inter­net suchen und dann in ihr Pow­er Query-Pro­jekt ein­binden.

Ein­er­seits ist die Suche und das damit ver­bun­dene herumpro­bieren nach der exak­ten Lösung nicht so ganz triv­ial und das imple­men­tieren in ein Pro­jekt ist auch an recht weni­gen Stellen im Inter­net deut­lich und klar beschrieben. Wenn Sie das ver­mei­den wollen, zeige ich Ihnen anhand eines Beispiels die Lösung dieses Prob­lems. Schreiben Sie mir eine Mail mit dem Betr­e­ff PQ-Lösung ISO-Kalen­der­woche und wenn Sie mir beispiel­sweise über den Donate-But­ton (oben rechts auf jed­er Seite) den Betrag von 20,00 € mit dem Ver­wen­dungszweck „PQ-ISO-KW” über­weisen, erhal­ten Sie per Mail den Link und auch das erforder­liche Pass­wort, um die Seite mit der Lösung zu öff­nen. Fra­gen Sie aber auch gerne per Mail oder auch tele­fonisch nach, falls Sie Fra­gen dazu haben. In dem Rah­men ein Hin­weis: Die vorgestellte Lösung bein­hal­tet eine recht umfan­gre­iche Funk­tion im Source­code. Sie kön­nen ihn mit meinen vorgegebe­nen Änderun­gen „blind” übernehmen, ins­ge­samt ist aber eine solide Wis­sens­ba­sis in Excel und eine gewisse Erfahrung mit Pow­er Query von Vorteil.

Um die Lösung mit der Hil­f­ss­palte nachvol­lziehen zu kön­nen, laden Sie beispiel­sweise diese Muster-Datei. Als Beispiel soll für jede Kalen­der­woche der Gesamt- als auch der Durch­schnitts-Umsatz durch Pow­er Query berech­net wer­den. Obwohl es dur­chaus möglich wäre, dieses mit SUMMEWENN() und auch der MITTELWERT()-Funktion im reinen Excel zu bew­erk­stel­li­gen kann Pow­er Query eine Hil­fe sein, wenn die Dat­en ständig ergänzt wer­den und dann natür­lich nur ein Klick auf Aktu­al­isieren reicht, um die neueste Sta­tis­tik auf dem Schirm zu haben. Und wenn sie etwas geübt sind mit Pow­er Query ist die Sache mit Mit­tel­w­ert auch wesentlich leichter und ele­gan­ter zu erledi­gen.

Fol­gen­des Vorge­hen bietet sich an:

  • Laden Sie zu Beginn diese Datei in den Abfrage-Edi­tor des Pow­er Query. Im 1. Schritt kön­nen Sie der Spalte Datum den hier etwas sin­nvolleren Daten­typ Datum zuweisen, auch wenn es nicht unbe­d­ingt erforder­lich ist.
  • Erstellen Sie über Ver­wal­ten eine Kopie diese Abfrage, ide­al­er­weise als Ver­weis.
  • Markieren Sie die Spalte KW (Kalen­der­woche) und anschließend Grup­pieren nach.
  • Im Dia­log geben Sie bei Neuer Spal­tenname beispiel­sweise Umsatz ein und im Feld Vor­gang wählen Sie Summe.
  • Anschließend bei Spalte noch Umsatz wählen und dann mit OK bestäti­gen.

Sin­nvoller­weise wer­den sie nun noch Kalen­der­wochen sortieren, um einen besseren Überblick zu bekom­men. Gewiss wird Ihnen ja aufge­fall­en, dass nach der KW 47 eine Lücke kommt und danach die KW 52. Das mag irri­tieren, aber der 1. Jan­u­ar 2017 gehört zur Kalen­der­woche 52 des ver­gan­genen Jahres und die Spalte wird numerisch kor­rekt sortiert … Möcht­en Sie die chro­nol­o­gis­che Rei­hen­folge in jedem Fall erhal­ten, dann kön­nen Sie in den Quell­dat­en entwed­er die berech­neten KW 52 durch KW 0 erset­zen oder aber mit ein­er etwas aufwändi­geren Formel die Jahreszahl voranstellen. Das soll aber hier nicht disku­tiert wer­den.

Um den Mit­tel­w­ert der jew­eili­gen Kalen­der­woche zu berech­nen, Wech­seln sie wieder zur Abfrage Tabelle1, erstellen erneut eine Kopie (evtl. per Duplizieren) und Klick­en dann wiederum auf die Über­schrift der Kalen­der­woche. Dann wiederum Grup­pieren nach, als Spal­tenname Durch­schnitt oder Mit­tel­w­ert vergeben und als Vor­gang naturgemäß auch den Mit­tel­w­ert. Aus­gew­ertet wer­den soll natür­lich auch hier die Spalte Umsatz. Bei Bedarf wieder die KW sortieren und das Ergeb­nis liegt vor.

▲ nach oben …

Dieser Beitrag wurde unter Datentyp anpassen, Datum & Zeit, Datum und Zeit, Filtern & Sortieren, Power Query, PQ-Formeln (Sprache M) abgelegt und mit , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.