2015-10-17 39 views
0

我想將工作表(工作表1)中的數據複製到另一工作表(工作表2)。但是,我會以100,000行爲單位完成此操作,並繼續操作,直到將Sheet1中的所有數據都複製到Sheet2中。我玩過偏移量,rows.count等,但我無法使它工作。任何幫助深表感謝。Excel VBA在每100000行的範圍內複製數據並粘貼到其他工作表,直到在範圍內複製了所有數據

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 
+0

請寫下您試過的代碼 – newguy

+0

感謝您的回覆。不幸的是我的代碼不值得放在這裏。我根本不知道從哪裏開始。這與在範圍內複製信息(包括100000行,第10列)一樣簡單,然後將該信息粘貼到另一個表格,然後恢復到下一個100000行。 – laurence

+0

這不是每次100k行。首先,當Z = 1時,'「A2:E100000」&Z'的結果爲「A2:E1000001」。然後,當Z = 2時,結果是「A2:E1000002」等... – ZygD

回答

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 
+0

謝謝。這非常有幫助! – laurence

相關問題