【问题标题】:VBA Copy and Paste Macro which Loops循环的 VBA 复制和粘贴宏
【发布时间】:2020-08-10 01:24:02
【问题描述】:

VBA 新手,只是想创建一个宏来复制指定范围内的表并粘贴到下一个可用的空行中。发生的情况是,每次我运行它时,它都会粘贴到相同的范围内,即 B12 并且不知道如何修改......

Sub CopyRange2()

Range("A1:I9").Select
Selection.Copy
Range("B12").Select
ActiveSheet.Paste
Application.CutCopyMode = False

End Sub

【问题讨论】:

    标签: vba copy range paste


    【解决方案1】:

    想知道您为什么指定单元格 B12 ?

    如果您只想将数据粘贴到下一个可用的空行中,则以下代码将起作用。

    Sub CopyRange2()
    
    Dim lastrow As Long
    
    lastrow = Range("A" & Rows.Count).End(xlUp).Row
    
    Range("A1:I9").Select
    Selection.Copy
    
    Range("A" & lastrow + 1).Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
    
    
    End Sub
    

    【讨论】:

    • 您的代码可以工作,但最好避免无意义的选择,尤其是在初学者要复制+粘贴的情况下。以下 4 行是等效的,不幸的是我无法在评论 Dim lastrow As Long lastrow = Range("A" & Rows.Count).End(xlUp).Row Range("A1:I9").Copy ActiveSheet 中格式化。粘贴目标:=Range("A" & lastrow + 1)
    猜你喜欢
    • 1970-01-01
    • 2015-12-02
    • 1970-01-01
    • 2019-05-20
    • 2016-11-09
    • 2019-01-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多