Kopieren und Einfügen einer Datenzeile in separate Zeilen und versetzte Spalten mithilfe eines Excel-VBA-Makros

Kopieren und Einfügen einer Datenzeile in separate Zeilen und versetzte Spalten mithilfe eines Excel-VBA-Makros

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!

Screenshot der beabsichtigten Ausgabe

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

verwandte Informationen