Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1844to1848
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Spalten zusammenführen

Spalten zusammenführen
07.09.2021 11:09:35
Boschi
Hallo zusammen,
ich habe folgendes Problem, welches ich mit Index-Formeln oder VBA nicht lösen konnte.
Ich habe folgenden Aufbau (KST steht über den Eurowerten)
KST1 KST2
23434 50€ 30€
23434 60€ 34€
2345 4350€ 79€
343430 43€ 10€
342340 40€ 90€
Es sind insgesamt ca. 40 Spalten, links sind Nummern die eindeutig sind, oben steht immer die Kostenstelle.
Das Ergebnis sollte folgendermaßen aussehen, die Eurowerte der einzelnen Spalten sollen in einer Spalte untereinander stehen, daneben in zwei weiteren Spalten dann immer die zugehörige Nummer und die Kostenstelle.
KST 1 23434 50€
KST 1 23434 60€
KST 1 2345 4350€
KST 1 343430 43€
KST 1 342340 40€
KST 2 23434 30€
KST 2 23434 34€
KST 2 2345 79€
KST 2 343430 10€
KST 2 342340 90€
Blattname usw. ist irrelevant, das baue ich mir selber ein, ich bekomme auch ein Makro hin, das die Spalten untereinander schreibt, aber das mit der Kostenstelle und Nummer ist für mich nicht darstellbar.
Für Hilfe bin ich dankbar.
Viele Grüße
Boschi

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Entpivotieren
07.09.2021 11:29:52
ChrisL
Hi
Mittels Power Query kannst du m.E. sehr elegant entpivotieren (inkl. Sortierung, unnötige Daten ausfiltern usw.):
https://www.youtube.com/watch?v=npzG-Br0GQs
Ansonsten bitte die Frage wieder als offen markieren. Mittels Beispieldatei (man erkennt z.B. ob es Lücken gibt oder ob immer alle 40 Spalten gefüllt sind) erhöhst du die Chance für eine rasche/korrekte Antwort.
cu
Chris
AW: Spalten zusammenführen
07.09.2021 11:30:17
Oberschlumpf
Hi,
zeig doch bitte mal per Upload eine Bsp-Datei, gern mit 10 oder mehr benutzten Spalten (und natürlich (Bsp)Daten in den Spalten/Zeilen)
Ich denke, ne Bsp-Datei ist für alle einfacher, als dass du versuchst, mit deinem Text zu beschreiben, wie es in der Datei aussieht.
Ciao
Thorsten
Anzeige
Als Makro zB so, wenn...
07.09.2021 11:52:01
migre
Hallo!
...ich Dich richtig verstanden habe:

Sub a()
Dim Wb As Workbook: Set Wb = ThisWorkbook
Dim WsQ As Worksheet: Set WsQ = Wb.Worksheets(1)
Dim WsZ As Worksheet, aVals, aTarg, c&, i&, j&
Application.ScreenUpdating = False
Set WsZ = Wb.Worksheets.Add
With WsQ
aVals = .Range("A1:C" & .Cells(.Rows.Count, 1).End(xlUp).Row)
c = (UBound(aVals, 1) - 1) * 2
End With
ReDim aTarg(1 To c, 1 To 3)
For i = 2 To UBound(aVals, 1)
aTarg(i - 1, 1) = aVals(1, 2)
aTarg(i - 1, 2) = aVals(i, 1)
aTarg(i - 1, 3) = aVals(i, 2)
Next i
i = 4
For j = 2 To UBound(aVals, 1)
aTarg(i + j, 1) = aVals(1, 3)
aTarg(i + j, 2) = aVals(j, 1)
aTarg(i + j, 3) = aVals(j, 3)
Next j
With WsZ
.Range(.Cells(1, 1), .Cells(UBound(aTarg, 1), UBound(aTarg, 2))) = aTarg
End With
Application.ScreenUpdating = True
Erase aVals: Erase aTarg: Set Wb = Nothing
Set WsQ = Nothing: Set WsZ = Nothing
End Sub
Annahme: Deine o.a. Ausgangsdaten stehen im 1. Tabellenblatt der Mappe ab A1, für die Ziel-Ausgabe wird ein neues Tabellenblatt hinzugefügt.
LG Michael
Anzeige
AW: Spalten zusammenführen
07.09.2021 12:33:54
Daniel
Hi
per Formel auf einem zweiten Blatt so, wenn die Daten in Tabelle1 in Zelle A1 beginnen (Zeile = Überschrift mit den Kostenstellen, Spalte A die Nummern)
hier die Formeln für die erste Zeile, die du nach unten ziehen kannst:
Formel ist für 5 Datenzeilen (wie dein Beispiel), diese Zahlen musst du an die tatsächliche größe der Tabelle anpassen:
Anzahl der Kostenstellen musst du dadurch berücksichtigen, wie weit du die Formeln nach unten ziehst.
a) Kostenstellen: =Index(Tabelle1!$1:1;1;2+Quotient(Zeile(A1)-1;5))
b) Nummern: =Index(Tabelle1!$A:$A;2+Rest(Zeile(A1)-1;5))
c) Euros: =Index(Tabelle1!$A:$ZZ;2+Rest(Zeile(A1)-1;5);2+Quotient(Zeile(A1)-1;5))
das "2+" ist jeweils die erste Zeile oder Spalte, ab der die Daten in der Ausgangstabelle beginnen.
wenn du die Formeln noch in Bezug auf die Anzahl der Datenzeilen in Tabelle1 flexibilisieren willst, kannst du diese auch mit Anzahl2(Tabelle1!$A:A) berechnen lassen.
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige