AW: merkenswerter Lösungsansatz ...
10.05.2022 09:14:49
neopa
Hallo Yal,
... den Du da aufgestellt hast. Vielen Dank Dir dafür.
Ich hatte bisher die Funktion "Überschriften als erste Zeile verwenden" noch nicht im Fokus, die in der Lösung eine Schlüsselrolle spielt.
Hab nun Deinen Ansatz noch so verkürzt, dass keine temp. Hilfsabfrage benötigt.wird. Die Datentabelle habe ich zuvor noch in Tabelle1 umbenannt.
Die allein nötige Abfrage ist nun noch so definiert:
let
Quelle = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
#"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"Spalte1", type text}, {"Spalte2", type any}, {"Spalte3", type any}, {"Spalte4", type any}, {"Spalte5", type any}, {"Spalte6", type any}, {"Spalte7", type any}, {"Spalte8", type any}, {"Spalte9", type any}, {"Spalte10", type any}}),
#"Tiefer gestufte Header" = Table.DemoteHeaders(#"Geänderter Typ"),
#"Transponierte Tabelle" = Table.Transpose(#"Tiefer gestufte Header"),
#"Nach unten gefüllt" = Table.FillDown(#"Transponierte Tabelle",{"Column2"}),
#"Zusammengeführte Spalten" = Table.CombineColumns(Table.TransformColumnTypes(#"Nach unten gefüllt", {{"Column2", type text}}, "de-DE"),{"Column2", "Column3"},Combiner.CombineTextByDelimiter(" ", QuoteStyle.None),"Zusammengeführt"),
#"Transponierte Tabelle1" = Table.Transpose(#"Zusammengeführte Spalten"),
#"Höher gestufte Header" = Table.PromoteHeaders(#"Transponierte Tabelle1", [PromoteAllScalars=true]),
#"Höher gestufte Header1" = Table.PromoteHeaders(#"Höher gestufte Header", [PromoteAllScalars=true]),
#"Entpivotierte andere Spalten" = Table.UnpivotOtherColumns(#"Höher gestufte Header1", {" Land"}, "Attribut", "Wert"),
#"Spalte nach Trennzeichen teilen" = Table.SplitColumn(#"Entpivotierte andere Spalten", "Attribut", Splitter.SplitTextByEachDelimiter({" "}, QuoteStyle.Csv, false), {"Jahr", "Kennzahl"}),
#"Geänderter Typ1" = Table.TransformColumnTypes(#"Spalte nach Trennzeichen teilen",{{"Jahr", Int64.Type}, {"Wert", type number}})
in
#"Geänderter Typ1"
Gruß Werner
.. , - ...