PQ: Wie viele Montage hat ein Jahr?

  Wis­sens­stand: Lev­el 1 ⇒ Ein­steiger in PQ, keine/kaum Erfahrung   

Power Query-Lösung:
Wie viele Montage hat das Jahr ?

Die spon­tane Antwort wäre gewiss: 52. Schließlich hat das Jahr 52 Wochen. Aber es gibt auch Aus­nah­men, und das nicht nur in Schalt­jahren; selb­st ein Schalt­jahr ist eine Gewähr für 1 Mon­tag mehr im Jahr. Es gibt wie so oft in Excel viele Wege zum Ziel, einige davon wur­den hier im Her­ber-Forum disku­tiert; ins­beson­dere auf der Basis von Excel-Formeln. Ich muss geste­hen, dass ich Excel-Spezis die solche Formeln zusam­men­brin­gen, wirk­lich bewun­dere. 💡 (Hin­weis: Der Link zum Her­ber-Forum ist eventuell nicht mehr aktiv…)

Da in den ersten Beiträ­gen im Forum doch sehr unter­schiedliche Ergeb­nisse zum tra­gen gekom­men sind und naturgemäß immer nur eines der Ergeb­nisse kor­rekt sein kann (wenn über­haupt) habe ich mich entschlossen, die Frage ein­mal auf der Basis des Pow­er Query zu lösen. Es hat mich auch gereizt auf diese (sichere) Weise festzustellen, welch­es Ergeb­nis denn nun kor­rekt ist. 😉 Und ich stellte fest, dass es gar nicht so viele Schritte sind, wie ich es zu Anfang gedacht hat­te. Ich habe aber auch bewusst den etwas leichteren Weg genom­men, eine Über­sicht jen­er Jahre darzustellen, die in einem definierten Zeitraum von Jahren 53 Mon­tage vor­weisen.

Die Vorge­hensweise wird Ihnen vielle­icht nicht geläu­fig oder bekan­nt sein, denn Sie begin­nen mit ein­er abso­lut leeren Arbeitsmappe. Aber dieser Ablauf bringt das gewün­schte Ergeb­nis, und das zählt. Sie begin­nen mit einem Klick in das Reg­is­ter Dat­en. Neue Abfrage | Aus anderen Quellen | Leere Abfrage. Das ganze stellt sich dann vielle­icht etwas unge­wohnt so dar:

Wirklich "sehr leer", aber das wird mit Sicherheit noch…

Wirk­lich „sehr leer”, aber das wird mit Sicher­heit noch… 😉

In der Eingabezeile, wo der Cur­sor blinkt, geben Sie diese recht kom­plexe Formel mit oder ohne Zeilen­schal­tung (per ShiftReturn) mit dem führen­den Gle­ich­heit­sze­ichen ein:
= List.Dates(#date(1950,1,1), Number.From(#date(2018,12,31) - #date(1950,1,1)) +1, #duration(1,0,0,0))

Zugegeben, diese Formel ist schon etwas anspruchsvoller. Im End­ef­fekt wird hier eine Liste erstellt, welche (dem Wun­sch entsprechend) die kalen­darische Dat­en für den Zeitraum 1.1.1950 bis zum 31.12.2018 erstellt. Für jeden Tag wird eine eigene Zeile gener­iert. Nach einem Return (Einga­betaste) wird blitzschnell eine Liste mit den Dat­en erstellt:

Aus jedem Tag des angegebenen Bereichs wurde eine Liste erstellt

Aus jedem Tag des angegebe­nen Bere­ichs wurde eine Liste erstellt

Hin­weis: An dieser Stelle, in diesem Beitrag wer­den Sie die Formel ein­fach so übernehmen, wie ich sie geschrieben habe. Sie funk­tion­iert. Wollen Sie die einzel­nen Ele­mente analysieren, bietet sich das Funk­tions-Verze­ich­nis der Sprache M an oder Sie fra­gen nach ein­er erweit­erten Ver­sion dieses Beitrages.

Solange die Dat­en als Liste vor­liegen, kön­nen Sie das gewün­schte Ziel nicht erre­ichen. Darum entwed­er per Sym­bol im Menüband oder Recht­sklick in die Über­schrift Zu Tabelle kon­vertieren und die Vor­gaben bestäti­gen.

Wech­sel zum Reg­is­ter Spalte hinzufü­gen und Datum | Jahr | Jahr, um eine neue Spalte mit der Jahreszahl zu gener­ieren. Markieren Sie anschließend die erste Spalte Column1 (die kalen­darischen Dat­en), Datum | Tag | Name des Tags.

Erweit­ern Sie nun die Spalte Name des Tages und set­zen Sie den Fil­ter so, dass nur der Mon­tag angezeigt wird. Anschließend ein Recht­sklick in Jahr und Grup­pieren nach…, anschließend die Vor­gaben so übernehmen.

Prinzip­iell ist das Ziel damit erre­icht. Eine Abfrage mit 69 Zeilen für die Jahre 1950 bis 2018, wo in der zweit­en Spalte die Anzahl der Mon­tage ver­merkt ist, wurde erstellt. Wenn Sie das Ganze über­sichtlich­er gestal­ten wollen, dann kön­nen Sie ja noch die Spalte Anzahl auf 53 fil­tern, weil dieses ja deut­lich weniger Jahre sind und alle anderen (nicht dargestell­ten Jahre des Zeitraums) dann naturgemäß 52 Tage haben.

▲ nach oben …

On top …

Möcht­en Sie mehr dazu lesen? Wollen Sie die Formel analysieren? Auch wenn sich das jet­zt vielle­icht etwas eige­nar­tig anhört, aber Sie haben die Möglichkeit, im Inter­net zu dieser The­matik dieses oder jenes nachzule­sen. Ich habe auch für diesen Beitrag in der Funk­tions-Beschrei­bung der Sprache M recht umfan­gre­ich geforscht, um einen auch für Ein­steiger prak­tizier­baren  Weg zu find­en. Und genau bei den Funk­tio­nen kön­nen Sie „in good old eng­lish” nach­le­sen was welche Funk­tion macht.

Alter­na­tive: Eine kurze Mail an Frag-den-Spezialisten@Excel-ist-sexy.de
Ich biete Ihnen an, in 2 weit­eren Abhand­lun­gen zu genau diesem The­ma, zu diesem Beitrag mehr zu erfahren. Aber diese Ausar­beitun­gen kosten mich Arbeit und natür­lich Zeit. Und das sollte auch Ihnen etwas wert sein. Für eine Spende von € 5,00 erhal­ten Sie eine Analyse und auch Vorge­hensweise der obi­gen Formel.  Und wenn Sie eine prak­tik­able Lösung mit mit­tlerem Aufwand suchen, um beispiel­sweise in A1 das Jahr als „nor­male” Zahl einzugeben, beispiel­sweise 2019 und dann ein Abfrage-Ergeb­nis mit auss­chließlich der Tabel­lenüber­schrift und darunter der Zahl der Mon­tage zu erhal­ten, dann bitte ich um eine Spende von 10,00€. Und bitte daran denken: In der Mail sollte der Link zu diesem Beitrag sein und Ihr Wun­sch, was Sie erhal­ten möcht­en. Nor­maler­weise bekom­men Sie dann einen Link zur entsprechen­den Seite und das erforder­liche Pass­wort, alter­na­tiv sende ich Ihnen auch eine *.pdf  zu.

▲ nach oben …

Dieser Beitrag wurde unter Datum & Zeit, Filtern & Sortieren, Foren-Q&A, Power Query, Spende/Donation, {Liste} abgelegt und mit , , , , , , , , , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.