VBA代码中的For循环
注意:我可以上传一个链接到评论中的图片 我在excel宏中使用for循环来编译数据 我有以下VBA代码:VBA代码中的For循环,vba,excel,for-loop,Vba,Excel,For Loop,注意:我可以上传一个链接到评论中的图片 我在excel宏中使用for循环来编译数据 我有以下VBA代码: Sub MoveData() ' ' MoveData Macro ' ' Dim rng As Range Set rng = Macro.Application.Range("R1:X1000") With rng For i = 1 To 200 a = 5 * i b = i + 1 Range(a, 18).Selec
Sub MoveData()
'
' MoveData Macro
'
'
Dim rng As Range
Set rng = Macro.Application.Range("R1:X1000")
With rng
For i = 1 To 200
a = 5 * i
b = i + 1
Range(a, 18).Select
Selection.Copy
Range(b, 3).Select
ActiveSheet.Paste
Next i
End With
End Sub
我收到以下错误消息:
运行时错误“424”:
所需对象
如有任何澄清,将不胜感激!我在这件事上被难住了好一阵子 像这样尝试,并确保您的值在activesheet上
Sub MoveData()
Dim rng As Range
Set rng = ActiveSheet.Range("R1:X1000")
With rng
For i = 1 To 200
a = 5 * i
b = i + 1
Debug.Print "copying from =>" & .Cells(b, 3).Address
Debug.Print "copyting to =>" & .Cells(a, 18).Address
Stop 'and take a look at the immediate window
' what is there?
.Cells(b, 3) = .Cells(a, 18)
Next i
End With
End Sub
复制和粘贴是否在同一张纸上?这些范围
Range(a,18)
和Range(b,3)
始终是相同的?请尝试将此宏.Application.Range
更改为此ActiveSheet.Range
是的,我正在复制并粘贴到同一页中。我将始终从列R:X复制并粘贴到列C:I@braX当我进行更改时,会收到一条新的错误消息,运行时错误“1004”:对象“\u Global”的方法“Range”失败。这里是指向屏幕截图的链接。我希望顶部的照片看起来像底部的照片。出于某种原因,这似乎删除了我数据的t列。@Emma-请重新编写代码。每次代码停止时查看即时窗口。每一轮,它都会打印出来:从=>$T$2复制到=>$AI$5Ok。然后试着根据您的需要调整一下,方法是更改a
、b
、3
和18
,@emma非常感谢!(我是新来的!)