基本上,我正在编译报告,并且可以按正确的顺序将每一行复制到另一张纸上,但是我不需要每一行的每一列。每行42列中只需3列即可转移到新工作表。到目前为止,这是我的代码:
For k = 2 To coor2(2)
If Cells(k, 5).Value > Cells(k, 16).Value Then
Cells(k, 5).EntireRow.Copy Sheets("test").Range("A" & Rows.Count).End(xlUp).Offset(1, 0)
End If
Next k
答案 0 :(得分:0)
For k = 2 To coor2(2)
If Cells(k, 5).Value > Cells(k, 16).Value Then
With Sheets("test").Range("A" & Rows.Count).End(xlUp)
Cells(k, 5).Copy .Offset(1, 0)
Cells(k, 7).Copy .Offset(1, 1)
Cells(k, 9).Copy .Offset(1, 2)
End With
End If
Next k
答案 1 :(得分:0)
Tim几乎具有复制单个单元格的要点...将列出我评论中列出的所有3个变体。
1)对于整行:
Sheets("Source").Rows(k).Copy Sheets("Destination").Rows(lastrow+1)
2)对于特定的单元格(或非连续范围)
Sheets("Source").Cells(k,3).Copy Sheets("Destination").Cells(lastrow+1,1)
Sheets("Source").Cells(k,5).Copy Sheets("Destination").Cells(lastrow+1,2)
Sheets("Source").Cells(k,7).Copy Sheets("Destination").Cells(lastrow+1,3)
3)对于连续范围
Sheets("Source").Range(Sheets("Source").Cells(k,3),Sheets("Source").Cells(k,7)).Copy Sheets("Destination").Range(Sheets("Destination").Cells(k,1),Sheets("Destination").Cells(k,5))
在每种情况下,假定您先前都找到了目标工作表的最后一行,并粘贴到了最后一行之后。