获取活动单元格的值并复制到另一个单元格。Excel VBA

获取活动单元格的值并复制到另一个单元格。Excel VBA

我正在整理一个可在 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

相关内容