Veränderte Überschriften Archive | THE SELF-SERVICE-BI BLOG Wir lieben Microsoft Power BI Mon, 14 Apr 2025 07:38:12 +0000 de hourly 1 https://wordpress.org/?v=6.9.4 https://ssbi-blog.de/wp-content/uploads/2019/10/Favicon-150x150.png Veränderte Überschriften Archive | THE SELF-SERVICE-BI BLOG 32 32 Wie Du Power Query bei Daten mit sich ändernden Spaltenüberschriften korrekt nutzt https://ssbi-blog.de/blog/business-topics/wie-du-power-query-bei-daten-mit-sich-aendernden-spaltenueberschriften-korrekt-nutzt/ https://ssbi-blog.de/blog/business-topics/wie-du-power-query-bei-daten-mit-sich-aendernden-spaltenueberschriften-korrekt-nutzt/#comments Mon, 24 Jul 2017 08:57:10 +0000 http://ssbi-company.de/?p=353 Wer mit Excel oder Power BI Desktop Daten via Power Query aus anderen Systemen importiert, stößt schnell auf ein Problem: Im Zeitverlauf ändern sich die Spaltenbeschriftungen der Quelldaten hin und wieder. Dies kann zu Problemen führen, da Power Query Spalten über deren Namen referenziert. In diesem Beitrag zeige ich Dir, wie Du Power Query bei […]

Der Beitrag Wie Du Power Query bei Daten mit sich ändernden Spaltenüberschriften korrekt nutzt erschien zuerst auf THE SELF-SERVICE-BI BLOG.

]]>

Wer mit Excel oder Power BI Desktop Daten via Power Query aus anderen Systemen importiert, stößt schnell auf ein Problem: Im Zeitverlauf ändern sich die Spaltenbeschriftungen der Quelldaten hin und wieder. Dies kann zu Problemen führen, da Power Query Spalten über deren Namen referenziert. In diesem Beitrag zeige ich Dir, wie Du Power Query bei Daten mit sich ändernden Spaltenüberschriften korrekt nutzt.

Als Abonnent meines Newsletters erhältst Du die Beispieldateien zu den Beiträgen dazu. Hier geht’s zum Abonnement des Newsletters!

Die Quelldaten

Die Datenquelle ist eine Tabelle, die wöchentlich die Anzahl der Mitarbeiter pro Abteilung liefert. Diese Tabelle besteht aus zwei Spalten:
  • Spalte 1: Abteilungsbezeichnung
  • Spalte 2: Anzahl Mitarbeiter
Quelldaten mit sich ändernder Spaltenüberschrift
Quelldaten mit sich ändernder Spaltenüberschrift
Die Besonderheit ist hier, dass die zweite Spalte, in welcher sich die Anzahl der Mitarbeiter befindet, in der Spaltenbezeichnung das Datum des jeweiligen Tages beinhaltet. Diese Spaltenüberschrift ändert sich also mit jeder Datenzulieferung. Ich ziehen diese Tabelle nun in Power Query.

Datenverarbeitung mit Power Query

In der Excel-Version 2016 wird eine Tabelle innerhalb von Excel wie folgt in Power Query geladen:

  1. Die aktive Zelle muss sich in der »intelligenten« Tabelle befinden
  2. Über den Reiter Daten (2) auf die Schaltfläche Aus Tabelle/ Bereich (3) klicken
Import der intelligenten Tabelle in Power Query
Import der »intelligenten« Tabelle in Power Query

In Power Query sieht die importierte Tabelle dann wie folgt aus:

Die importierte Tabelle in Power Query
Die importierte Tabelle in Power Query

Beim Import der Tabellen fügt Power Query automatisch den Schritt geänderter Typ hinzu. Wichtig hierbei ist, dass der Spaltenname 07.07.2017 fest im M-Code hinterlegt wird. Der M-Code verweist also nicht auf die zweite Spalte in der Tabelle, sondern direkt auf die Spalte 07.07.2017, die bei der nächsten Datenlieferung nicht mehr existieren wird.

Exkurs: Wer die automatische Typenerkennung lieber ausschalten möchte, tut dies in Excel 2016 wie folgt:

Automatische Typenerkennung in Power Query für Excel 2016 ausschalten
Automatische Typenerkennung in Power Query für Excel 2016 ausschalten

Nachdem die Tabelle nun in Power Query vorhanden ist, versehe ich die Überschrift mit etwas mehr Bedeutung: Aus 07.07.2017 wird Anzahl Mitarbeiter.

Dazu klicke ich doppelt auf die Überschrift der zweiten Spalte und benennen diese um. Das Ergebnis sieht wie folgt aus:

Die umbenannte Spalte in Power Query
Die umbenannte Spalte in Power Query

Bis hierhin reicht mir die Datenverarbeitung erst einmal und ich lade das Ergebnis der Power Query-Abfrage nun in eine Exceltabelle:

Die fertige Power Query-Abfrage in ein Excel-Tabellenblatt laden
Die fertige Power Query-Abfrage in ein Excel-Tabellenblatt laden

Nachdem die Daten in ein neues Excel-Tabellenblatt importiert wurden, sieht die entstandene Tabelle wie folgt aus.

Die fertige Power Query-Abfrage als Import in Excel
Die fertige Power Query-Abfrage als Import in Excel

Die schlichte Umbenennung der zweiten Spalte in Anzahl Mitarbeiter dient hierbei natürlich nur als sehr simples Beispiel für alle denkbaren Transformationen, die mit Power Query möglich sind. Was passiert jetzt bei der nächsten Datenzulieferung mit veränderter Spaltenüberschrift?

Neue Daten, neue Spaltenüberschrift

Eine Woche vergeht und ich erhalte neue Daten in meiner Exceltabelle. Da die zweite Spalte das Tagesdatum der Datenzulieferung enthält, hat sich also die zweite Spaltenüberschrift meiner Importtabelle geändert.

Power Query Query-Refresh mit neuen Daten
Power Query Query-Refresh mit neuen Daten

Versuche ich diesen Import zu aktualisieren, folgt umgehend folgende Fehlermeldung:

Power Query-Fehlermeldung: Spalte nicht gefunden
Power Query-Fehlermeldung: Spalte nicht gefunden

Power Query kann die gesuchte Spalte 07.07.2017 nicht finden. Ich gehe zurück in Power Query, um zu sehen, was hier passiert ist.

Ursache des Fehlers: Power Query sucht nach fest hinterlegter Spalte
Ursache des Fehlers: Power Query sucht nach einer fest hinterlegten Spalte

Erinnerst Du Dich daran, dass Power Query automatisch die Datentypenerkennung übernimmt und dabei (und auch bei vielen anderen Schritten) fest auf Spaltennamen verweist?! Genau das ist die Ursache des Problems. Power Query sucht weiterhin nach der Spalte mit der Bezeichnung 07.07.2017, obwohl diese bereits 14.07.2017 heißt.

 Im Schritt Umbenannte Spalten stoße ich auf dasselbe Problem, weil auch hier eine fest hinterlegte Spaltenreferenz besteht.

Auch Table.RenameColumns() referenziert fest auf Spalten
Auch Table.RenameColumns() referenziert fest auf Spalten
Die Ursache des Problems sind also feste Spaltenreferenzen in Power Query’s Funktionssprache M. Wie kann ich dieses Problem lösen?

Lösung über die grafischen Nutzeroberfläche (GUI)

Lösungen für das Problem veränderter Spaltenüberschriften gibt es viele. Für das aktuelle Problem zeige ich Euch die meiner Meinung nach einfachste Lösung, die ohne jegliche Kenntnisse von M erstellt werden kann.

Die Überschriften unserer Datenquelle ändert sich regelmäßig. Daher ist es sinnvoll gleich zu Beginn der Power Query-Abfrage die bestehende Überschrift zurückzusetzen und durch eine eigene (sich nicht verändernde) Überschriften auszutauschen.
Ich gehe in sechs Schritten vor:

1. Ich lade die Tabelle erneut in Power Query

Import der Exceltabelle in Power Query
Import der Exceltabelle in Power Query

2. Anschließend entferne ich den Schritt mit der automatische Erkennung der Datentypen

Dieser Schritt beinhaltet den ersten fixen Spaltenbezug (07.07.2017) und verursacht daher bei der nächsten Datenzulieferung Probleme. Daher entferne ich diesen Schritt zunächst und füge ihn später wieder hinzu.

Entfernen der automatischen Datentyperkennung, wegen des fixen Spaltenbezuges
Entfernen der automatischen Datentyperkennung, wegen des fixen Spaltenbezuges

3. Verwendung der Überschriften als erste Zeile

Ich kann die Überschriften zurücksetzen und als erste Zeile benutzen. Da dies der zweite Schritt in der Power Query-Abfrage ist (gleich nach der Datenquelle), stelle ich hierüber sicher, dass die beiden Spalten zu Beginn dieser Abfrage immer Column1 und Column2 heißen. Dies macht die Abfrage robust.

Entfernung, der sich ändernden Spaltenbeschriftungen
Entfernung, der sich ändernden Spaltenbeschriftungen

4. Erzeugung einer robusten, d. h. sich nicht mehr ändernden Überschrift

Nun vergebe ich sprechende Spaltennamen, die sich danach nicht mehr ändern werden.

Neue Spaltenbezeichnungen erzeugen Power Query
Neue Spaltenbezeichnungen erzeugen

5. Löschen der ersten Zeile (in der die ursprüngliche Überschrift steht)

Die erste Zeile, in denen sich die alte Spaltenüberschrift befindet, kann ich nun entfernen.

Die erste Zeilen mit den alten Spaltenüberschriften entfernen Power Query
Die erste Zeilen mit den alten Spaltenüberschriften entfernen

 

6. Anpassen der Datentypen

Abschließend passe ich die Datentypen wieder an.

Anpassen der Datentypen, basierend auf robusten Spaltenüberschriften in Power Query
Anpassen der Datentypen, basierend auf robusten Spaltenüberschriften
Mein Ziel ist erreicht: Die Abfrage kann nun auch dann ausgeführt werden, wenn die Überschrift der Datenzulieferung (bei gleichbleibender Struktur) veränderlich sind.

Schlussfolgerung

Die heutige Problematik entstand durch sich ändernde Spaltenüberschriften in der Datenquelle meiner Power Query-Abfrage. Diese Problematik kann umgangen werden, wenn direkt nach dem Datenimport als erster Schritt robuste, nicht veränderliche Spaltenüberschriften vergeben werden, bevor weitere Schritte ausgeführt werden.

Bis zum nächsten Mal und denk dran: Sharing is caring. Wenn Dir der Beitrag gefallen hat, dann teile ihn gerne

Viele Grüße aus Hamburg,

Lars

Der Beitrag Wie Du Power Query bei Daten mit sich ändernden Spaltenüberschriften korrekt nutzt erschien zuerst auf THE SELF-SERVICE-BI BLOG.

]]>
https://ssbi-blog.de/blog/business-topics/wie-du-power-query-bei-daten-mit-sich-aendernden-spaltenueberschriften-korrekt-nutzt/feed/ 11