Spalten in Zeilen transponieren

Hallo Experten,

ich erhalte regelmäßig daten die folgendermaßen aussehen:

Daten1 Region1
Daten2 Region2
Daten3 Region3
Daten4 Region1
Daten5 Region1
Daten6 Region3
Daten7 Region2
Daten8 Region2
Daten9 Region1

Was ich brauche sind daten die folgendermaßen aussehen
Region Häufigkeit 1 2 3 4
Region1 4 Daten1 Daten4 Daten5 Daten9
Region2 3 Daten2 Daten7 Daten8
region3 2 Daten3 Daten6

Das mit der Häufigkeit habe ich hingekriegt. Ich habe ein Makro geschrieben, dass mir die Daten aussliest in ein neues Blatt kopiert und die Häufigkeit (zählenwenn) ausliest. Aber vor dem tranponieren stehe ich davor wie ein Ochs vor Berg, ich habe keinen plan wie das gehen könnte.

Natürlich ist das so, dass jedesmal andere regionen vorhanden sind. Neue Regionen sind dabei, alte fallen weg…
Und es sind über 100 zeilen, also wirklich keine Möglichkeit, das per hand zu machen.

Für Hilfe bin ich sehr Dankbar.

(P.S. excel 2003)

Hallo Experten,

Hallo Winterritter.

Transponieren in Excel: Datenbereich markieren, Bereich zum Einfügen aussuchen, Rechte Maustaste auf die gewünschte Zelle, Inhalte einfügen auswählen, Häkchen bei Transponieren setzen.

Grüße
Joshua

Hallo Joshua

Transponieren in Excel, Datenbereich markieren, (???), Bereich zum Einfügen aussuchen, rechte Maustaste auf die gewünschte Zelle,„Inhalte einfügen“ auswählen, Häkchen bei Transponieren setzen.

Bei mir (Excel aus Office 2007) muss der Datenbereich erst kopiert werden mit Ctrl (Strg) + C
und dann geht es mit Einfügen weiter…

mfG
Hermes

ich erhalte regelmäßig daten die folgendermaßen aussehen:
Daten1 Region1
Daten2 Region2
Daten3 Region3
Daten4 Region1
Daten5 Region1
Daten6 Region3
Daten7 Region2
Daten8 Region2
Daten9 Region1

Was ich brauche sind daten die folgendermaßen aussehen
Region Häufigkeit 1 2 3 4
Region1 4 Daten1 Daten4 Daten5 Daten9
Region2 3 Daten2 Daten7 Daten8
region3 2 Daten3 Daten6

Das mit der Häufigkeit habe ich hingekriegt. Ich habe ein
Makro geschrieben, dass mir die Daten aussliest in ein neues
Blatt kopiert und die Häufigkeit (zählenwenn) ausliest. Aber
vor dem tranponieren stehe ich davor wie ein Ochs vor Berg,
ich habe keinen plan wie das gehen könnte.

Hi Winterknight,
probiere das mal:

Option Explicit
'
Sub tt()
Dim Zei1 As Long, Zei2 As Long, Spa2 As Integer
Dim ws1 As Worksheet, ws2 As Worksheet, Arr, Z As Long
Set ws1 = Worksheets("Tabelle1")
Set ws2 = Worksheets("Tabelle2")
With ws2
 .UsedRange.ClearContents
 Zei1 = ws1.Cells(Rows.Count, 1).End(xlUp).Row
 ws1.Range("A1:A" & Zei1).Copy Destination:=.Range("c1")
 ws1.Range("B1:B" & Zei1).Copy Destination:=.Range("A1")
 Application.CutCopyMode = False
 .Range("A1:C10").Sort Key1:=.Range("A1"), Order1:=xlAscending, Header:=xlNo, \_
 OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
 Arr = .Range("A1:C" & Zei1 + 1)
 .UsedRange.ClearContents
 For Z = 1 To Zei1
 Zei2 = Zei2 + 1
 .Cells(Zei2, 1) = Arr(Z, 1)
 .Cells(Zei2, 2) = 1
 .Cells(Zei2, 3) = Arr(Z, 3)
 While Arr(Z, 1) = Arr(Z + 1, 1)
 Z = Z + 1
 .Cells(Zei2, .Cells(Zei2, Columns.Count).End(xlToLeft).Column + 1) = Arr(Z, 3)
 .Cells(Zei2, 2) = .Cells(Zei2, 2) + 1
 Wend
 Next Z
 .Activate
End With
End Sub

Gruß
Reinhard

Hallo Joshua

Hallo Hermes.

Bei mir (Excel aus Office 2007) muss der Datenbereich erst
kopiert werden mit Ctrl (Strg) + C
und dann geht es mit Einfügen weiter…

bei mir auch :smile:

Niemals schneller schreiben als denken.
Danke für die Korrektur.

Grüße
Joshua