将粘贴复制到Excel中的新工作表

时间:2013-08-05 11:23:15

标签: excel excel-vba copy-paste worksheet-function vba

所以我得到了这个代码,它将单元格从C4复制到C10并粘贴它们。问题是它粘贴到同一个工作表,我需要将其粘贴到第二个工作表。

我不知道如何在代码中更改工作表,所以我希望有人可以帮助我。

以下是代码:

Sub Save_Click()
Range("C4:C10").Copy
Dim curRange As Range
Dim curCol As Integer: curCol = 7
Dim completed As Boolean: completed = False
Do
    curCol = curCol + 1
    Set curRange = Range(Cells(3, curCol), Cells(9, curCol))

If (WorksheetFunction.CountA(curRange) = 0) Then Exit Do End If Loop While (Not completed) curRange.PasteSpecial End Sub

1 个答案:

答案 0 :(得分:0)

对于工作表“Iskalnik”,正如您所做的那样,使用:

Sheets("Iskalnik").Range("C4:C10").Copy

对于工作表“Baza”,而不是:

Set curRange = Sheets("Baza").Range(Cells(3, curCol), Cells(9, curCol))

使用它:

With Worksheets("Baza")
    Set curRange = .Range(.Cells(3, curCol), .Cells(9, curCol))
End With

curRange的问题在于RangeCells关键字都需要引用该表。 With ... End With只是一种方便的方法。