循环xldown很多次

时间:2017-02-08 20:01:06

标签: excel-vba vba excel

我想做的是多次循环xlDown

我想到这样的事情:

For i=1 to 2000

   1 x Selection.End(xlDown).Select
then copy a range, then pasting it in another worksheet (i already have these functions)

next

第二次迭代应该Selection.End(xlDown).Select 2次,第三次3次,依此类推。

拜托,我坚持这个,我知道这很容易

提前致谢

1 个答案:

答案 0 :(得分:0)

假设您有从A2到A202的数据,并且数据中有三个空白。还假设您知道数据没有下降到A250,A250和数据结束之间没有任何内容。

最好的方法是从底部使用xlUp一次而不是xlDown多次。但你可以做到这两点。这是一个例子。

Sub LoopDown()

    Dim rStart As Range
    Dim rEnd As Range
    Dim i As Long

    Set rStart = Sheet1.Range("A2")
    Set rEnd = rStart 'set it to rStart initially

    For i = 1 To 7 'go to # of gaps x 2 + 1 (3 x 2 + 1 = 7 for 3 gaps)
        Set rEnd = rEnd.End(xlDown) 'every time you do an
                                    'xlDown, you reset rEnd
    Next i

    'These are the same
    Debug.Print Range(rStart, rEnd).Address
    Debug.Print Range(rStart, Range("A250").End(xlUp)).Address

End Sub

并返回此

$A$2:$A$202
$A$2:$A$202