Ich versuche, den folgenden Schritt zu automatisieren. Aus einer einzelnen Zeile mit Excel-Daten möchte ich jeden Zellenwert in separate Zeilen kopieren und einfügen, aber nach Spalten versetzt, wie im Bild gezeigt. Gibt es einen VBA-Makrocode, der diesen Schritt ausführen kann? Vielen Dank im Voraus!
Antwort1
Es gibt eine VBA-Funktion namens Offset. Wenn Sie die Zellen in Zeile 1 durchlaufen, erhöhen Sie eine Variable und verwenden Sie diese, um den Offset für jeden Wert festzulegen.
Option Explicit
Sub staggerRows()
Dim i As Long, rng As Range
With Worksheets("sheet1")
For Each rng In .Range(.Cells(1, "B"), .Cells(1, .Columns.Count).End(xlToLeft))
i = i + 1
rng.Offset(i, 0) = rng.Value2
Next rng
End With
End Sub