在范围内运行for循环时编译错误

时间:2016-07-12 10:22:07

标签: vba excel-vba excel

我有以下代码尝试获取动态范围并打印范围的每个单元格的值。

Sub Macro3()

'
    Range("D10").Select
    x = Range(Selection, Selection.End(xlDown)).Select


    For Each cell In x
        MsgBox (cell)
    Next x

End Sub

如果我运行它,但它会出现编译错误......对这里出了什么问题的想法?

2 个答案:

答案 0 :(得分:1)

试试这个:(使用Set并删除.Select

Set x = Range(Selection, Selection.End(xlDown))

NextNext cell代替Next x

答案 1 :(得分:0)

Option Explicit

Sub Macro3()

    Dim x       As Range
    Dim cell    As Range


    Range("D10").Select

    Set x = Range(Selection, Selection.End(xlDown)).Select
    For Each cell In x
        MsgBox (cell)
    Next cell

End Sub

您好。你需要下一个单元而不是下一个x。请享用! :d