如何将行从一个Excel表复制到另一个,并使用VBA创build重复项?

我有两张工作表excel工作簿:sheet1有列A到R,第1行标题中的大型数据表。工作表2具有列A到AO中的数据。

使用VBA我试图从sheet1复制行并将它们粘贴到sheet2的末尾。 此外,我需要只复制列A到R,而不是整个行。

换句话说,来自sheet1的单元格A2:R2需要被复制到A列中没有数据的第一行和第二行。

任何帮助,高度赞赏!

@AlistairWeir,我有一个从sheet1复制所需的单元格的下面的代码,但我不知道如何复制每一行两次。

Sub example()

For Each ce In Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row)

If Not IsEmpty(ce) Then

Sheets("sheet2").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Resize(1, 18).Value = Range(ce, ce.Offset(0, 17)).Value

End If

Next ce

End Sub

尝试这个:

 Option Explicit Sub CopyRows() Dim ws1 As Worksheet, ws2 As Worksheet Dim i As Integer, k As Integer Dim ws1LR As Long, ws2LR As Long Set ws1 = Sheets("Sheet1") Set ws2 = Sheets("Sheet2") ws1LR = ws1.Range("A" & Rows.Count).End(xlUp).Row + 1 ws2LR = ws2.Range("A" & Rows.Count).End(xlUp).Row + 1 i = 2 k = ws2LR Do Until i = ws1LR With ws1 .Range(.Cells(i, 1), .Cells(i, 18)).Copy End With With ws2 .Cells(k, 1).PasteSpecial .Cells(k, 1).Offset(1, 0).PasteSpecial End With k = k + 2 i = i + 1 Loop End Sub 

如果在工作簿中调用Sheet1Sheet2不同的东西。