Erledigt Excel / VBA Daten umsortieren Frage bzw. Bitte um Idee

Theoderix

Themenstarter
Miesepeter²
Moin Boardies, ich habe eine Excel Datei bekommen, die ich weiterverwursten soll.
Leider liegen die Daten mal wieder in einem komplett anderen Format vor, als abgesprochen, bzw. als die Schnittstelle nach Access fressen mag.
Vielleicht hat ja einer von euch eine Idee, wie ich das Problem lösen kann.

Folgende Aufgabenstellung:

1651318869429.png

Da das im Original insgesamt deutlich über hundert Spalten sind und es um die 30.000 Einträge in den Zeilen gibt, fände ich eine automatisierte Lösung via VBA bzw Macro klasse.

Im Prinzip transponieren nur muss halt immer noch die Nummer und der Text jeweils zugeordnet werden.
Als ich mich noch mehr mit dem Kram beschäftigt habe, hatte ich auch schon mal eine Lösung programmiert, momentan stehe ich aber komplett auf dem Schlauch und wäre für Hilfe dankbar.

Gruß Theo
 

dr_tommi

alter Oldie
SQLIte? UnPivot?
Etwas Mojo und zwei For-Schleifen ist alles was man braucht.
Code:
Sub CommandButton5_Click()
Dim QLastRow, QLastCol As Long
'ermitteln letzte Zeile in Quelle
QLastRow = Worksheets("Quelle").Cells(1048576, 1).End(xlUp).Row
'ermitteln letzte Spalte in Quelle
QLastCol = Worksheets("Quelle").Range("A1").SpecialCells(xlCellTypeLastCell).Column
'Zähler
Count = 1
'Lese alle Werte aus Quelle
Dim Zeile As Integer, Spalte As Integer
For Zeile = 0 To QLastRow - 2
    For Spalte = 1 To QLastCol - 1
        Worksheets("Ziel").Cells(Count, 1).Value = Worksheets("Quelle").Cells(Zeile + 2, 1).Value
        Worksheets("Ziel").Cells(Count, 2) = Worksheets("Quelle").Cells(1, 1 + Spalte).Value
        Worksheets("Ziel").Cells(Count, 3) = Worksheets("Quelle").Cells(Zeile + 2, 1 + Spalte).Value
    Count = Count + 1
    Next Spalte
Next Zeile
MsgBox " Daten erfolgreich übernommen ", vbInformation, " Sicherung in Worksheet Ziel "
End Sub
Das Beispiel kopiert die Daten aus dem Tabellenblatt Quelle in das Tabellenblatt Ziel.
Und wenn ich keine Fehler gemacht habe sollte das Ergebnis genau so aussehen wie gewünscht.

Im Anhang eine Beispieldatei. Endung txt entfernen und auspacken.
 

Anhänge

  • Mappe1.xlsm.7z.txt
    20 KB · Aufrufe: 10

Theoderix

Themenstarter
Miesepeter²
@Dankeschön, mit dem Code klappts wunderbar. Irgendwie hatte ich das mit der Schleife nicht sauber hinbekommen, da merkt man erst, wie schnell man Sachen vergisst, mit denen man nicht mehr zu tun hat. Das bedeutet wenigstens einen guten Schluck Schnaps, falls du mal in der Gegend bist, @dr_tommi .:yo
 
Oben Unten