PQ: Objektbezogenen Index erstellen

Mitunter ist es erforder­lich, einen objek­t­be­zo­ge­nen Index (fort­laufende Num­merierung) zu erstellen. Wenn jed­er auszuw­er­tende Begriff ein­ma­lig ist, also nur ein einziges Mal in der Liste vorkommt, reicht ja ein ganz „nor­maler“ Index vol­lkom­men aus. Wenn aber die Such­be­griffe in der Liste mehrfach vorkom­men und diese dann in der Rei­hen­folge ihres Erscheinens eine fort­laufende und lück­en­lose Num­merierung bekom­men sollen, ist etwas mehr Aufwand erforder­lich. 😉

Für diese Übung laden Sie das (etwas betagte aber gut geeignete) File mit den Abge­ord­neten des 18. Deutschen Bun­destages hier aus unserem Blog herunter. Die zu dem Zeit­punkt „aktiv­en“ Abge­ord­neten sollen in der derzeit­i­gen Rei­hen­folge (alpha­betisch nach Namen) eine fort­laufende Num­mer (Index) bekom­men. Da ja fast jed­er Name ein­deutig ist, wird als Kri­teri­um die Frak­tion­szuge­hörigkeit genom­men.

Importieren Sie die Dat­en erst ein­mal auf gewohn­tem Wege in den Pow­er Query-Edi­tor. Im Hin­blick darauf, dass hier nur die zu dem Zeit­punkt dem Bun­destag ange­höri­gen Abge­ord­neten aus­gew­ertet wer­den sollen, ent­fer­nen Sie gle­ich zu Beginn die nicht mehr im Bun­destag vertrete­nen Abge­ord­neten; diese sind an dem ange­fügten Aster­isk (*) in der Spalte Frak­tion erkennbar. Sie wis­sen, dass das recht ele­gant über den Fil­ter (Textfil­ter) und das Argu­ment Endet nicht mit… zu erre­ichen ist. Nun umfasst die Liste/Abfrage statt 642 nur noch die kor­rek­te Anzahl von 631 Zeilen.

Um zu gewährleis­ten, dass nach dem Abschluss des gesamten Vor­gangs die Rei­hen­folge immer noch bzw. wieder die gle­iche ist wie derzeit, fügen Sie eine neue Spalte, eine Indexs­palte hinzu. Markieren Sie nun Frak­tion, Recht­sklick und Grup­pieren nach… Als Neuer Spal­tenname tra­gen Sie Data ein, bei Vor­gang wählen Sie Alle Zeilen. Bestäti­gen Sie mit OK. Dass die Anzeige (ie Tabelle) auf vier Zeilen geschrumpft ist liegt daran, dass es genau vier Frak­tio­nen gibt.

Fügen Sie nun wiederum eine neue Benutzerdefinierte Spalte hinzu, belassen Sie es gerne beim vorgegebe­nen Spal­tenna­men und fügen bei Benutzerdefinierte Spal­tenformel exakt diese Formel ein:
Table.AddIndexColumn([Data], "Index+", 1, 1)
was zur Folge hat, dass eine dritte Spalte gener­iert wor­den ist, wo in jed­er einzel­nen Zeile das Wort Table ver­merkt ist. Mit anderen Worten: Für jede der Frak­tio­nen ist eine eigene Tabelle erstellt wor­den. Da hierin alle Werte der ursprünglichen Tabelle enthal­ten sind, ein Recht­sklick auf Benutzerdefiniert und Andere Spal­ten ent­fer­nen. Erweit­ern Sie nun diese einzig verbliebene Spalte durch einen Klick auf den Dop­pelpfeil Doppelpfeil, ent­fer­nen Sie das Häkchen bei Ursprünglichen Spal­tenna­men… und bestäti­gen Sie mit OK.

Sie wer­den rasch erken­nen, dass von der ursprünglichen Rei­hen­folge so gut wie gar nichts mehr erhal­ten ist. Um das zu „heilen“, sortieren Sie Index auf­steigend und löschen Sie die Spalte Index, denn sie hat ihren Dienst getan. Wenn Sie nun die Spalte Index+ zu einem aus­sagekräfti­gen Namen (beispiel­sweise fort­laufende Num­mer) umbe­nen­nen, ist das gewün­schte Ziel erre­icht.

Dieser Beitrag wurde unter Allgemein veröffentlicht. Setze ein Lesezeichen auf den Permalink.