データの列があるので、それをA列と呼びましょう。例えば35行のデータで。ループの各サイクルで列と行の両方をインクリメントしながら、この列を1回ループ処理してから各データポイントを別のシートに貼り付ける方法。つまり、2枚目のシートに斜めに貼り付けるようにします。 VBAでそのようなアクションを実行する簡単な方法はありますか?
回答:
回答№1は4ループしないで、配列操作を楽しんでください。
Sub ColumnToDiagonal()
With Sheet2.Cells.Resize(35, 35)
.Formula = "=IF(Row()<>Column(), """", sheet1!$A1)"
.Value = .Value
End With
End Sub
回答№2については2
A.S.Hで頬を掘る。
複雑にならないように、ループしてください。
Sub ColumnToDiagonal()
Dim r As Long
For r = 1 To 35
Worksheets("Sheet2").Cells(r, r).Value = Worksheets("Sheet1").Cells(r, "A").Value
Next
End Sub