Forumbeitrag
Excel-Version des Fragestellers:
365 privat
Erfahrungslevel des Fragestellers:
Basiskenntnisse in VBA
Moin Christian, :-)
...
Erklärung: ;-)
Lines.FromBinary() ist
nur dann die schnellste Methode (
bezogen auf Power Query), wenn du "
einfach strukturierte" CSV-Dateien hast. ;-)
Das
ist bei dir ja der Fall. Der "
Rahmen" ist klar -
53 Zeilen (Header + 52 Datenzeilen). Mehr nicht. ;-)
Du sparst dir das C
SV-Parsing, die
Tabellenerzeugung und die
Spaltenverwaltung. ;-)
Noch
etwas mehr Geschwindigkeit könntest du erreichen, wenn du
die Codezeile...
Rang = List.Transform(
Werte,
each Text.AfterDelimiter(_, ";")
)
Damit ersetzt: ;-)
Rang =
List.Transform(
List.FirstN(List.Skip(Lines.FromBinary([Content], null, null, 65001),1),52),
each Text.Range(_, Text.PositionOf(_, ";")+1)
)
Die
beiden M-Codezeilen dann
entfernen: ;-)
Zeilen = Lines.FromBinary([Content], null, null, 65001),
Werte = List.FirstN(List.Skip(Zeilen,1),52),
Nun wird kein
Text.AfterDelimiter() mehr aufgerufen. ;-)
Du kannst sowas auch über
"Table.Pivot(..." erreichen, aber das wäre in dem Fall eine "
teure Operation". ;-)
Nicht falsch verstehen -
Pivotieren/Entpivotieren sind
tolle Funktionen - aber in
dem Fall "
Bremsen". ;-)
Es kommt
immer auf die
jeweilige Situation an. ;-)
Servus
Case