Hallo,
ich hoffe Ihr könnt mir vba Anfänger bei dieser kleinen Aufgabe helfen. Ich habe schon angefangen.
So wie unten zu sehen, wird und soll im Tabellenblatt "Quelldaten" ein Bereich von A1:A31 kopiert und in Tabellenblatt "Zieldaten" transponiert in die erste Zeile eingefügt werden. Dies funktioniniert soweit. Ich würde diese Vorgang jetzt gerne wiederholen, also das wieder aus Tabellenblatt "Quelldaten" jetzt die Zeilen A32:A62 kopiert und in die zweite Zeile in Tabelllenblatt "Zieldaten" transponiert eingefügt werden. Dies könnte zB bis Zeile 1000 in den Quelldaten geschehen oder bis keine Werte mehr in den zu kopierenden Zellen sind, das is egal. Vielen Dank schon einmal.
-
Code: Alles auswählen
-
Option Explicit
Sub Transponiere()
Dim z As Long 'Spaltenversatz
Dim i As Long
Dim msg As String
Application.ScreenUpdating = False
z = 1
For i = 1 To Sheets("Quelldaten").UsedRange.Count
Sheets("Quelldaten").Range(Cells(1, i), Cells(31, i)).Copy
Sheets("Zieldaten").Cells(z, 1).PasteSpecial transpose:=True
z = z + 31
Next i
msg = MsgBox("Es wurden " & Sheets("Quelldaten").UsedRange.Rows.Count & " Zieldaten")
Application.ScreenUpdating = True
End Sub
|