Estou tentando automatizar a etapa seguinte. A partir de uma única linha de dados do Excel, gostaria de copiar e colar cada valor de célula em linhas separadas, mas escalonadas por colunas, conforme mostrado na imagem. Existe um código de macro VBA capaz de executar esta etapa? Desde já, obrigado!
Responder1
Existe uma função VBA chamada Offset. À medida que você percorre as células na linha 1, incremente uma variável e use-a para controlar o deslocamento de cada valor.
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