[英]Moving ranges to copy and paste in Excel VBA
我試圖設置宏以從工作表(1)中選擇數據,然后將數據粘貼到另一個工作表(2)中,然后從工作表(2)中獲取結果,然后將該信息粘貼到工作表(3)中。 我遇到的問題是使范圍向下移動到要從工作表(1)復制的下一組數據,以及使工作表(2)的結果粘貼到工作表(3)中最后一個結果下方的行中。
似乎我嘗試過的代碼不會移至要復制的新數據,並且在復制工作表(2)中的方程式結果之前,沒有足夠的時間通過。 以下是我嘗試的無效代碼:
Sub COPY_PASTE_MLR_10()
Application.ScreenUpdating = False
Dim Y As Integer, X As Integer, I As Integer
'COPY DATA TO EQUATIONS
For I = 4 To 255
Y = I
X = I + 10
Sheets("QDATA").Range("G4:G14").COPY _
Destination:=Sheets("R10").Range("A5")
Sheets("QDATA").Range("OI:OI+10").COPY _
Destination:=Sheets("R10").Range("C5")
Sheets("QDATA").Range("WI:WI+10").COPY _
Destination:=Sheets("RLR10").Range("D5")
Sheets("QDATA").Range("AC4:AC14").COPY _
Destination:=Sheets("R10").Range("E5")
Sheets("QDATA").Range("AN4:AN14").COPY _
Destination:=Sheets("R10").Range("F5")
Sheets("QDATA").Range("BA4:BA14").COPY _
Destination:=Sheets("R10").Range("G5")
Sheets("QDATA").Range("BI4:BI14").COPY _
Destination:=Sheets("R10").Range("H5")
Sheets("QDATA").Range("BQ4:BQ4").COPY _
Destination:=Sheets("R10").Range("I5")
'COPY RESULTS TO '10 RESULTS'
Sheets("R10").Range("J5:K5").COPY
Sheets("10 RESULTS").Range("B2:C2").PasteSpecial Paste:=xlPasteValues
Sheets("R10").Range("J6:K6").COPY
Sheets("10 RESULTS").Range("D2:E2").PasteSpecial Paste:=xlPasteValues
Application.ScreenUpdating = True
End Sub
您有一些循環迭代器變量,但沒有正確使用它們。 嘗試這個:
For I = 4 To 255
Y = I
X = I + 10
Sheets("QDATA").Range("G" & Y & ":G" & X).COPY _
Destination:=Sheets("R10").Range("A" & Y+1)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.