Power Query: Datum aus dem Spaltentitel auslesen und als neue Spalte bereitstellen
09.03.2023
Beim Import aus fremden Systemen sind wichtige Informationen manchmal Teil eines Spaltentitels. Hier im Beispiel ist es der Monat, aus dem die Daten stammen. Es kann aber auch die verwendete Währung oder die Umsatzbasis sein. Wird diese Teilinformation für die spätere Auswertung gebraucht, muss sie aus dem Spaltentitel ausgelesen und als neue Spalte bereitgestellt werden. In diesem Power-Query-Rezept beschreibe ich die Schritte.

Eine Information aus dem Spaltentitel in einer neuen Spalte bereitstellen
Information aus Spaltenüberschrift in einem Schritt sichern
Um die Information aus dem Spaltentitel auszulesen, gehe ich wie folgt vor:
- Ich wähle die Befehlsfolge Daten > Aus Tabelle/Bereich

Tabelle in Power Query einlesen und neuen benutzerdefinierten Schritt einleiten
- Ich klicke auf das fx neben der Bearbeitungsleiste und erzeuge so einen neuen benutzerdefinierten Schritt, der sich auf den vorherigen namens Quelle bezieht.
- Um auf den Spaltentitel zugreifen zu können, erweitere ich den M-Code um die Funktion Table.ColumnNames.

Mit Table.ColumnNames die Spaltentitel des Schrittes Quelle als Liste erzeugen
- Am Ende des Ausdrucks füge ich {0} hinzu, um den ersten Eintrag dieser Spaltenliste auszulesen.
- Damit ich nur die letzten 7 Zeichen mit der Monatsangabe erhalte, ummantele ich den Ausdruck mit der Funktion Text.End.

Mit Text.End und der Angabe 7 die letzten 7 Zeichen auslesen
- Den benutzerdefinierten Schritt benenne ich um in Umsatzmonat.
Extrahierte Information als Spalte verfügbar machen
Nun kehre ich zur eigentlichen Umsatzliste zurück und erweitere diese um eine neue Spalte:
- Ich klicke auf das fx neben der Bearbeitungsleiste und verweise dort wieder auf den Schritt Quelle.
- Den benutzerdefinierten Schritt benenne ich um in ZurueckZurQuelle.

Mit einem benutzerdefinierten Schritt wieder zur Ausgangsliste zurückkehren
- Nun klicke ich auf Spalte hinzufügen > Benutzerdefinierte Spalte, wähle als Spaltenname Monat und als Formel = Umsatzmonat.

Benutzerdefinierte Spalte erstellen mit der Information des Umsatzmonats
Spalten umbenennen, verschieben und Datentypen anpassen – unabhängig vom Monat
Zum Schluss möchte ich noch die erste Spalte ordentlich benennen, die Spalten in eine andere Reihenfolge bringen und die Datentypen anpassen.
Aber ACHTUNG, dabei ist Vorsicht geboten, denn das Aufbereiten der Daten soll auch für künftige Monate funktionieren. Deshalb darf der Name der ersten Spalte im M-Code nicht vorkommen. Das löse ich wie folgt:
- Als erstes benenne ich die Spalte wie gewohnt per Doppelklick auf den Spaltennamen um. Im dabei entstandenen M-Code ersetze ich den festen Spaltennamen durch Table.ColumnNames(Quelle){0}.

Festen Spaltennamen ersetzen durch den aktuellen, per Formel ermittelten Namen
- Jetzt kann ich beruhigt die Spalten durch Ziehen mit der Maus in eine andere Reihenfolge bringen und die Datentypen anpassen.
Ähnliche Beiträge
-
Power Query: Ausgeblendete Arbeitsblätter auslesen? So geht’s doch!
Kürzlich erhielt ich den Hilferuf einer Anwenderin, weil sie in Excel mit Power Query nicht auf die Daten in einer anderen Arbeitsmappe zugreifen konnte. Sie wurden im Navigator nicht angezeigt....
-
Power Query: Falsche Datentypen? Drei Tipps, die das verhindern
Es sollte mal wieder schnell gehen und dabei bleib das Festlegen der Datentypen auf der Strecke. Doch spätestens beim nächsten Datenimport rächt sich das. Denn unsachgemäß eingestellte oder bei erneuten...
-
Power Query: Spalten entfernen ja, aber bitte richtig
Kürzlich hatte ich im Kurs eine spannende Diskussion zum Entfernen von Spalten. Die Frage war: Was tun, wenn sich nach dem Entfernen mehrerer Spalten herausstellt, dass es eine zu viel...