Excel循环复制粘贴,直到列

时间:2017-03-18 14:15:17

标签: vba excel-vba excel

我试图从B5单元格开始复制B列中的数据并粘贴到单元格E2中。循环此直到B列中的空白单元格每次都覆盖E2。有什么建议?

2 个答案:

答案 0 :(得分:1)

考虑:

Sub dural()
    Dim r As Range, rB As Range

    Set rB = Range("B5:B" & Rows.Count)

    For Each r In rB
        If r.Value = "" Then Exit Sub
        r.Copy Range("E2")
    Next r
End Sub

enter image description here

注意:

您可以使用循环找到空白区域上方的单元格并仅复制/粘贴一次来提高速度性能。

答案 1 :(得分:1)

你可以使用:

Sub main()
    Dim r As Range

    Set r = Range("B5")
    Do While r.Value <> ""
        Range("E2").Value = r.Value
        Set r = r.Offset(1)
    Loop
End Sub