kann mir bitte Jemand sagen, warum ich diese CSV nicht in Kommas aufgeteilt bekomme?
https://www.herber.de/bbs/user/153407.zip
Servus
Titel1,Titel2,Titel3
"A,""B"",""C"""
Um dies nachträglich auszukorrigieren, hätte ich folgenden Vorschlag (neue leere Abfrage, Code in den erweiterten Editor reinkopieren):
let
Quelle = Csv.Document(File.Contents("C:\Pfad\Velar Excel Format.csv"),1,"####",ExtraValues.Ignore),
#"Spalte nach Trennzeichen teilen" = Table.SplitColumn(Quelle, "Column1", Splitter.SplitTextByEachDelimiter({","}, QuoteStyle.None, false), {"Column1.1", "Column1.2"}),
#"Spalte nach Trennzeichen teilen1" = Table.SplitColumn(#"Spalte nach Trennzeichen teilen", "Column1.2", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Column1.2.1", "Column1.2.2", "Column1.2.3", "Column1.2.4", "Column1.2.5", "Column1.2.6", "Column1.2.7", "Column1.2.8", "Column1.2.9", "Column1.2.10", "Column1.2.11", "Column1.2.12", "Column1.2.13"}),
#"Höher gestufte Header" = Table.PromoteHeaders(#"Spalte nach Trennzeichen teilen1", [PromoteAllScalars=true]),
#"Geänderter Typ" = Table.TransformColumnTypes(#"Höher gestufte Header",{{"Startdatum", type date}, {"Startzeit", type time}, {"Enddatum", type date}, {"Endzeit", type time}, {"Startort", type text}, {"Startkoordinaten", type text}, {"Zielort", type text}, {"Zielkoordinaten", type text}, {"Dauer (HH:MM)", type time}, {"Abstand(km)", type number}, {"Leistungsfähigkeit(l/100 km)", type number}, {"Durchschnittsgeschwindigkeit(km/h)", Int64.Type}, {"PHEV Fuel efficiency(l/100 km)", type number}, {"EV Distance(km)", type number}})
in
#"Geänderter Typ"
- Zuerst ein Trennzeichen, das gar nicht existiert "####"
Deinen Code
...nicht SO darstellen (auf Button klicken, in dem in gelb als Text "Code..." steht), aber würdest du es tun, könnte deine Antwort vielleicht sogar hilfreich sein :-/
let
Source = Csv.Document(File.Contents("C:\Users\......\Downloads\153407\Velar Excel Format.csv"),[Delimiter=";", Columns=1, Encoding=65001, QuoteStyle=QuoteStyle.None]),
#"Split Column by Delimiter" = Table.SplitColumn(Source, "Column1", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Column1.1", "Column1.2", "Column1.3", "Column1.4", "Column1.5", "Column1.6", "Column1.7", "Column1.8", "Column1.9", "Column1.10", "Column1.11", "Column1.12", "Column1.13", "Column1.14"}),
#"Promoted Headers" = Table.PromoteHeaders(#"Split Column by Delimiter", [PromoteAllScalars=true]),
#"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"Startdatum", type date}, {"Startzeit", type time}, {"Enddatum", type date}, {"Endzeit", type time}, {"Startort", type text}, {"Startkoordinaten", type text}, {"Zielort", type text}, {"Zielkoordinaten", type text}, {"Dauer (HH:MM)", type time}, {"Abstand(km)", Int64.Type}, {"Leistungsfähigkeit(l/100 km)", Int64.Type}, {"Durchschnittsgeschwindigkeit(km/h)", Int64.Type}, {"PHEV Fuel efficiency(l/100 km)", Int64.Type}, {"EV Distance(km)", Int64.Type}}),
#"Split Column by Delimiter1" = Table.SplitColumn(#"Changed Type", "Startort", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Startort.1", "Startort.2", "Startort.3"}),
#"Split Column by Delimiter2" = Table.SplitColumn(#"Split Column by Delimiter1", "Startkoordinaten", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Startkoordinaten.1", "Startkoordinaten.2"}),
#"Split Column by Delimiter3" = Table.SplitColumn(#"Split Column by Delimiter2", "Zielort", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Zielort.1", "Zielort.2", "Zielort.3"}),
#"Split Column by Delimiter4" = Table.SplitColumn(#"Split Column by Delimiter3", "Zielkoordinaten", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Zielkoordinaten.1", "Zielkoordinaten.2"})
in
#"Split Column by Delimiter4"
let
Quelle = Csv.Document(File.Contents("C:\Users\...\Downloads\Velar Excel Format.csv"),[Delimiter=",", Columns=14, Encoding=65001, QuoteStyle=QuoteStyle.None]),
#"Geänderter Typ" = Table.TransformColumnTypes(Quelle,{{"Column1", type text}, {"Column2", type text}, {"Column3", type text}, {"Column4", type text}, {"Column5", type text}, {"Column6", type text}, {"Column7", type text}, {"Column8", type text}, {"Column9", type text}, {"Column10", type text}, {"Column11", type text}, {"Column12", type text}, {"Column13", type text}, {"Column14", type text}}),
#"Zusammengeführte Spalten" = Table.CombineColumns(#"Geänderter Typ",{"Column2", "Column3", "Column4", "Column5", "Column6", "Column7", "Column8", "Column9", "Column10", "Column11", "Column12", "Column13", "Column14"},Combiner.CombineTextByDelimiter(",", QuoteStyle.None),"Zusammengeführt"),
#"Hinzugefügte benutzerdefinierte Spalte" = Table.AddColumn(#"Zusammengeführte Spalten", "Benutzerdefiniert", each if [Column1]="Startdatum" then [Column1]&","&[Zusammengeführt] else [Column1]),
#"Entfernte Spalten" = Table.RemoveColumns(#"Hinzugefügte benutzerdefinierte Spalte",{"Column1", "Zusammengeführt"}),
#"Spalte nach Trennzeichen teilen1" = Table.SplitColumn(#"Entfernte Spalten", "Benutzerdefiniert", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Benutzerdefiniert.1", "Benutzerdefiniert.2", "Benutzerdefiniert.3", "Benutzerdefiniert.4", "Benutzerdefiniert.5", "Benutzerdefiniert.6", "Benutzerdefiniert.7", "Benutzerdefiniert.8", "Benutzerdefiniert.9", "Benutzerdefiniert.10", "Benutzerdefiniert.11", "Benutzerdefiniert.12", "Benutzerdefiniert.13", "Benutzerdefiniert.14"}),
#"Höher gestufte Header" = Table.PromoteHeaders(#"Spalte nach Trennzeichen teilen1", [PromoteAllScalars=true]),
#"Geänderter Typ1" = Table.TransformColumnTypes(#"Höher gestufte Header",{{"Startdatum", type text}, {"Startzeit", type text}, {"Enddatum", type text}, {"Endzeit", type text}, {"Startort", type text}, {"Startkoordinaten", type text}, {"Zielort", type text}, {"Zielkoordinaten", type text}, {"Dauer (HH:MM)", type text}, {"Abstand(km)", type text}, {"Leistungsfähigkeit(l/100 km)", type text}, {"Durchschnittsgeschwindigkeit(km/h)", type text}, {"PHEV Fuel efficiency(l/100 km)", type text}, {"EV Distance(km)", type text}})
in
#"Geänderter Typ1"
Gruß Werner
let
//mein Dateipfad zur csv-Datei
Pfad = "E:\Daten\Excel\PowerQuery\Neopa_PQ\07\CSV",
Quelle = Csv.Document(File.Contents(Pfad & "\Velar Excel Format.csv"),[Delimiter=",", Columns=14, Encoding=65001,
QuoteStyle=QuoteStyle.None]),
#"Höher gestufte Header" = Table.PromoteHeaders(Quelle, [PromoteAllScalars=true]),
//Namensliste der neuen Spaltenüberschriften
SpaltenNamensListe = Table.ColumnNames(#"Höher gestufte Header"),
//nur 1. Spalte behalten
#"Andere entfernte Spalten" = Table.SelectColumns(#"Höher gestufte Header",{SpaltenNamensListe{0}}),
//alle "-Zeichen in der Spalte entfernen
#"Ersetzter Wert" = Table.ReplaceValue(#"Andere entfernte Spalten","""","",Replacer.ReplaceText,{"Startdatum"}),
#"Spalte nach Trennzeichen teilen" = Table.SplitColumn(#"Andere entfernte Spalten", "Startdatum",
Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), SpaltenNamensListe),
//Transformieren-Datentyp erkennen
#"Geänderter Typ" = Table.TransformColumnTypes(#"Spalte nach Trennzeichen teilen", {{"Startdatum", type date},
{"Startzeit", type time}, {"Enddatum", type date}, {"Endzeit", type time}, {"Startort", type text},
{"Startkoordinaten", type text}, {"Zielort", type text}, {"Zielkoordinaten", type text},
{"Dauer (HH:MM)", type time}, {"Abstand(km)", Int64.Type}, {"Leistungsfähigkeit(l/100 km)", Int64.Type},
{"Durchschnittsgeschwindigkeit(km/h)", Int64.Type}, {"PHEV Fuel efficiency(l/100 km)", Int64.Type},
{"EV Distance(km)", Int64.Type}})
in
#"Geänderter Typ"
Gruß von Luschi
let
Quelle = Csv.Document(File.Contents("C:\Users\...\Downloads\Velar Excel Format.csv"),[Delimiter=";", Columns=1, Encoding=65001, QuoteStyle=QuoteStyle.None]),
#"Spalte nach Trennzeichen teilen" = Table.SplitColumn(Quelle, "Column1", Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), {"Column1.1", "Column1.2", "Column1.3", "Column1.4", "Column1.5", "Column1.6", "Column1.7", "Column1.8", "Column1.9", "Column1.10", "Column1.11", "Column1.12", "Column1.13", "Column1.14"}),
#"Geänderter Typ" = Table.TransformColumnTypes(#"Spalte nach Trennzeichen teilen",{{"Column1.1", type text}, {"Column1.2", type text}, {"Column1.3", type text}, {"Column1.4", type text}, {"Column1.5", type text}, {"Column1.6", type text}, {"Column1.7", type text}, {"Column1.8", type text}, {"Column1.9", type text}, {"Column1.10", type text}, {"Column1.11", type text}, {"Column1.12", type text}, {"Column1.13", type text}, {"Column1.14", type text}}),
#"Höher gestufte Header" = Table.PromoteHeaders(#"Geänderter Typ", [PromoteAllScalars=true]),
#"Geänderter Typ1" = Table.TransformColumnTypes(#"Höher gestufte Header",{{"Startdatum", type date}, {"Startzeit", type time}, {"Enddatum", type date}, {"Endzeit", type time}, {"Startort", type text}, {"Startkoordinaten", type text}, {"Zielort", type text}, {"Zielkoordinaten", type text}, {"Dauer (HH:MM)", type time}, {"Abstand(km)", Int64.Type}, {"Leistungsfähigkeit(l/100 km)", Int64.Type}, {"Durchschnittsgeschwindigkeit(km/h)", Int64.Type}, {"PHEV Fuel efficiency(l/100 km)", Int64.Type}, {"EV Distance(km)", Int64.Type}}),
Divisionsspalte = Table.TransformColumns(#"Geänderter Typ1", {{"EV Distance(km)", each _ / 10, type number}})
in
Divisionsspalte
Gruß Werner
let
PfadDatei = "E:\Daten\Excel\PowerQuery\Neopa_PQ\07\CSV\Velar Excel Format.csv",
Quelle = Csv.Document(File.Contents(PfadDatei),[Delimiter=";", Columns=1, Encoding=65001,
QuoteStyle=QuoteStyle.None]),
//Spaltenamen als List-Objekt aus der 1. Datenzeile von Quelle erstellen
/* so
aa1=Quelle{0},
aa2= Record.ToList(aa1),
aa3=List.First(aa2),
SpaltenNamenListe=Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv)(aa3),
//oder so - alles in einem PQ-Schritt
SpaltenNamenListe = Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv)
(List.First(Record.ToList(Quelle{0}))),
#"Gefilterte Zeilen" = Table.SelectRows(Quelle, each (Text.Start([Column1], 10) "Startdatum")),
#"Spalte nach Trennzeichen teilen" = Table.SplitColumn(#"Gefilterte Zeilen", "Column1",
Splitter.SplitTextByDelimiter(",", QuoteStyle.Csv), SpaltenNamenListe),
#"Geänderter Typ" = Table.TransformColumnTypes(#"Spalte nach Trennzeichen teilen",
{{"Startdatum", type date}, {"Startzeit", type time}, {"Enddatum", type date},
{"Endzeit", type time}, {"Startort", type text}, {"Startkoordinaten", type text},
{"Zielort", type text}, {"Zielkoordinaten", type text}, {"Dauer (HH:MM)", type time},
{"Abstand(km)", Int64.Type}, {"Leistungsfähigkeit(l/100 km)", Int64.Type},
{"Durchschnittsgeschwindigkeit(km/h)", Int64.Type},
{"PHEV Fuel efficiency(l/100 km)", Int64.Type}, {"EV Distance(km)", Int64.Type}}),
Divisionsspalte = Table.TransformColumns(#"Geänderter Typ", {{"EV Distance(km)", each _ / 10, type number}})
in
Divisionsspalte
Gruß von LuschiDie erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen