[英]Cut and Paste Loop with VBA in Excel Error 1004
對於我當前的項目,我試圖在工作表中將一組單元格向下移動到一定數量的行。 我認為最簡單的方法是切割第二組到最后一組並將其粘貼到最后一組,然后將第三組切割到最后一組並將其粘貼到第二組到最后一組的位置,依此類推(從那時起)我不想成為要擴展的列表)使用以下代碼:
For i = 298 To 8 Step -5
Sheets("Calc").Range(Cells(i, 130), Cells(i + 4, 130)).Cut
Sheets("Calc").Range(Cells(i + 5, 1)).PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Next i
但是,我總是在第二行代碼上得到運行時錯誤1004。
誰能幫我嗎?
改為使用這個:
With Sheets("Calc")
For i = 298 To 8 Step -5
.Range(.Cells(i, 130), .Cells(i + 4, 130)).Cut Destination:=.Cells(i + 5, 130)
Next i
End With
如我所見,你可以在沒有循環的情況下完成它:
With Sheets("Calc")
.Range(.Cells(8, 130), .Cells(302, 130)).Cut Destination:=.Cells(13, 130)
End With
順便說一句,我已經將目的地范圍從Sheets("Calc").Cells(i + 5, 1)
改為Sheets("Calc").Cells(i + 5, 130)
(據我所知你的問題,你想要的)移動細胞,但不能跨越細胞)
您不能將PasteSpecial
與Cut
您可以復制並粘貼為值
要么
你可以剪切和粘貼
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.