我需要一些关于MS Excel宏的帮助。我有1000多行,但我只需要复制一些到另一个工作表。列已按升序降序排列。简而言之,宏只会复制几行,如果单元格“M26”的值为6,则宏只会将6行复制到另一个工作表。
x = 2
Do While Cells(x, 1) <> ""
If Cells(x, 3) = "Africa" Then
Worksheets("srcSheets").Rows(x).Copy
Worksheets("destSheet").Activate
erow = Worksheets("destSheet").Cells(Rows.Count, 1).End(xlUp).Offset(1, 0).Row
ActiveSheet.Paste Destination:=Worksheets("destSheet").Rows(erow)
End If
Worksheets("srcSheets").Activate
x = x + 1
Loop
答案 0 :(得分:0)
这会将第2行到第x行从sheet1复制到sheet2,其中x是sheet2 A1中的数字。您可能需要添加一些错误处理。编辑它以满足您的需求。
Sub copyrows()
Dim x As Integer
x = Worksheets("sheet2").Range("A1").Value
Worksheets("sheet1").Rows("2:" & x).Copy Destination:=Worksheets("sheet2").Rows(1)
End Sub