如何在更改另一个工作表中的数据时粘贴一个工作表中的数据?

时间:2017-06-14 14:37:42

标签: excel vba excel-vba copy

我一直在广泛研究这个问题,但我的研究结果都没有帮助我修复我的代码。

我正在尝试复制worksheet2中的所有数据,并直接粘贴在worksheet1(每月更改一次)的数据下。这是我到目前为止,但每次我尝试运行它,它说

  

运行时错误9'下标超出范围'。

Sub macro8()
    Sheets("worksheet2").UsedRange.Copy Destination:=Sheets("worksheet1").End(xlUp).Offset(1, 0)
End Sub

1 个答案:

答案 0 :(得分:1)

尝试:

Sub macro8()
Sheets("worksheet2").UsedRange.Copy Destination:=Sheets("worksheet1").UsedRange.End(xlDown).Offset(1, 0)
End Sub

编辑:

然后以正确的方式做。您可以更改列字母" A"用你的连续专栏的字母。

Sub macro8()
Dim Rng1 As Range, Rng2 As Range, ws1 As Worksheet, ws2 As Worksheet

Set ws1 = Worksheets("worksheet1")
Set ws2 = Worksheets("worksheet2")
Set Rng2 = ws2.UsedRange 'Copy range
Set Rng1 = ws1.Range("A" & ws1.Rows.Count).End(xlUp).Offset(1, 0) 'Paste range

Rng2.Copy Destination:=Rng1 'Copy/Paste
End Sub