我正在整理一个可在 Excel 中循环浏览的列表。
我想从 A2 开始循环 A 列,并将值从活动单元格复制到 D2(始终为 D2)
这是我目前所拥有的:
Sub Test2()
Range("A2").Select
Do Until IsEmpty(ActiveCell)
'Take value from active Cell and copy to D2
MsgBox ("Continue")
ActiveCell.Offset(1, 0).Select
Loop
End Sub
我尝试'Take value from active Cell and copy to D2
用替换Range("D2).value = ActiveCell
,但没有效果。
有什么建议。
总结一下。D2 等于 A2,我将收到消息框,按继续,然后 D2 等于 A3,依此类推...
我也尝试过:
Sub TestLoop()
Dim Selected As Variant
Selected = Selection.Value
Range("A2").Select
Do Until IsEmpty(ActiveCell)
Range("D2").Value = Selected
MsgBox ("Continue")
ActiveCell.Offset(1, 0).Select
Loop
End Sub
答案1
我只是觉得我应该添加一个简单的版本,没有你的答案.select
Sub TestLoop()
Dim r As Range
Set r = Range("A2")
Do Until IsEmpty(r)
Range("D2").Value = r '.Value
MsgBox ("Continue")
Set r = r.Offset(1)
Loop
End Sub
答案2
我已经解决了这个问题。
我认为我将变量放在了循环之外。
Sub TestLoop()
Range("A2").Select
Do Until IsEmpty(ActiveCell)
Dim Selected As Variant
Selected = ActiveCell.Value
Range("D2").Value = Selected
MsgBox ("Continue")
ActiveCell.Offset(1, 0).Select
Loop
End Sub