首页 文章

Excel VBA复制数据,范围为每100000行,并粘贴到不同的工作表,直到所有数据都已在范围内复制

提问于
浏览
0

我想将工作表(Sheet1)中的数据复制到另一个工作表(Sheet2) . 但是,我希望以100,000行的块完成此操作并继续,直到Sheet1中的所有数据都已复制到Sheet2 . 我玩弄了offsets,rows.count等,但我无法让它工作 . 任何帮助深表感谢 .

Sub MyRow()
Dim iRow
Dim Z As Integer

Application.ScreenUpdating = False

For Z = 1 To 8
    Sheets("sheet2").Range("A2:E100000" & Z).Copy Sheets("Sheet1").Range("A:E")
Next Z

End Sub

1 回答

  • 0

    我试图尽可能多地重用你的代码 . 我想这可能是你想要的 .

    Sub MyRow()
    Dim Z As Integer
    Dim lastRow As Long
    
    Application.ScreenUpdating = False
    
    lastRow = Sheets("Sheet1").Cells.SpecialCells(xlCellTypeLastCell).Row
    For Z = 1 To WorksheetFunction.RoundUp(lastRow / 100000, 0)
        Sheets("Sheet1").Range("A1:E100000").Offset((Z - 1) * 100000).Copy _
          Sheets("Sheet2").Range("A1").Offset((Z - 1) * 100000)
    Next
    
    End Sub
    

相关问题