Wir wünschen allen Forenteilnehmern ein frohes Fest und einen guten Rutsch ins neue Jahr. x

flache Tabelle umwandeln
#1
Hallo,

als Kopie einer mittlerweile kaputten MS-Access-DB ist eine CSV-Datei noch vorhanden geblieben. Darin sind sämtliche Infos aus der DB vorhanden, verbunden sind die Infos durch die eindeutige ID.

Damit ich mit den Daten noch was anfangen kann, müsste ich die flache Tabelle mit etwa 200.000 IDs und insgesamt etwa 2.000.000 Zeilen in eine Tabelle umwandeln, die so wie im Beispiel zuu sehen, so aufgebaut, dass in jeder Excel Zeile nur 1 ID vorkommt. Mit welcher Excel-Formel könnte man das bewerkstelligen?

Bitte um Hilfe!

LG


Angehängte Dateien Thumbnail(s)
   

.xlsx   beispiel.xlsx (Größe: 11,65 KB / Downloads: 7)
Antworten Top
#2
Hi,

a) die csv-Datei musst du wohl in mehrere csv's aufteilen, da Excel, so viel ich weiß, nur ca 1 Mio Zeilen pro Datei aufnehmen kann ("nur" 1 Mio..LOL...aber nun gut Smile )
b) kannst du bitte anstelle eines Bildes ein Excel oder CSV-Bsp-Datei per Upload zeigen, weil man in Excel mit Excel, bzw CSV-Datei besser testen/programmieren kann, als nur mit nem Bild.
c) zumindest ich könnte, wenn ich es denn hinbekomme, "nur" mit einer VBA-Idee helfen
d) wenn dir c) nicht gefällt, du also nur mit Formeln weiterkommst, dann warte bitte auf weitere Antworten

Ciao
Thorsten
Antworten Top
#3
Power Query kann locker mit CSVs > 2^20 Zeilen umgehen.
Ist aber leider nicht mein Fachgebiet.
Da gibt es andere hier im Forum.
Einfach mal abwarten!

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#4
Hier die Excel-Datei 
Vielen Dank!


Angehängte Dateien
.xlsx   beispiel.xlsx (Größe: 11,65 KB / Downloads: 3)
Antworten Top
#5
Sehe ich es richtig, dass 

die Zahl der Sätze einer Flat-Tabelle 

der Zahl der Sätze der satzreichsten Tabelle einer normalisierten Datenbank 

entspricht?

Dass nur die Größe der Datenbank kleiner ist, als die Flattable?
WIN/MSO schicken angeblich alle 5 Sekunden Deinen Screen heim zu Papa (recall-Klausel). 
Antworten Top
#6
Hallo

Anbei mein PQ Versuch so wie ich es verstanden habe.


Angehängte Dateien
.xlsx   beispiel - Kopie.xlsx (Größe: 22,73 KB / Downloads: 5)
Viele Grüße
PIVPQ
Antworten Top
#7
Ja, das ist schon der richtige Weg, jedoch mit welche Excel Formel oder Power Query macht man das?

LG
Antworten Top
#8
Aus seiner Datei:
PHP-Code:
let
    Source 
Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
    #"Tab1GZ" = Table.Group(Source, {"ID"}, {{"Orte", each Text.Combine([Orte],"; "), type nullable text}}),
    #"Tab1Gz" = Table.Group(Source, {"ID", "JG"}, {{"Berufe", each Text.Combine([Berufe],"; "), type nullable text}})
in
    Table
.SplitColumn(Table.SplitColumn(Table.ExpandTableColumn(Table.NestedJoin(Tab1Gz, {"ID"}, #"Tab1GZ", {"ID"}, "Tab1GZ", 
    JoinKind.LeftOuter), "Tab1GZ", {"Orte"}, {"Orte"}),"Berufe"Splitter.SplitTextByDelimiter(";"QuoteStyle.Csv), {"Berufe.1"
    "Berufe.2""Berufe.3"}),"Orte"Splitter.SplitTextByDelimiter(";"QuoteStyle.Csv), {"Orte.1""Orte.2""Orte.3""Orte.4"
    "Orte.5"}) 

Dazu:
• klicke in die Tabelle Ergebnis
• Abfrage → bearbeiten
• dann Ansicht → erweiterter Editor
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#9
Sorry, aber diese Abfrage im PowerQuery schaffe ich nicht. Ich bin mit Excel Formeln etwas vertrauter und ich kann mich vage daran erinnern, dass eine Excel Formel dies umstrukturieren kann.
Gibt es irgendeine Formel, die dies schafft?

LG
Antworten Top
#10
Man kann auch mit EINDEUTIG, MTRANS und FILTER arbeiten.
Siehe Datei

.xlsx   Eindeutig_Filter.xlsx (Größe: 13,23 KB / Downloads: 6)
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste