以 250 为增量复制从第 1 行到第 250 行的一系列值,直到最后

问题描述 投票:0回答:1

我是编写 VBA 代码的新手。 我正在尝试复制从范围 B1 到 250 的一系列值,然后粘贴到另一张纸中,并从范围 B251 以 250 的增量重复,直到最后一行。

但似乎无法通过使用 for 循环找到任何解决方案

Sub forloop()

    Dim lngLastRow As Long
    Dim lngLoopCtr As Range
    lngLastRow = Range("B" & Rows.Count).End(xlUp).row
    For lngLoopCtr = 1 To lngLastRow Step 250
        lngLoopCtr.Value.copy
        With Sheets("sheet1").Range("A")
        .PasteSpecial
        End With
    Next lngLoopCtr
    
End Sub
excel vba loops for-loop
1个回答
0
投票
  • 复制需要将范围定义为
    Range
    对象。
  • 循环计数器是一个数字。
  • 要仅复制值,应使用
    PasteSpecial
    方法进行选择。

应用这样的东西:

Sub forloop()

    Dim lngLastRow As Long
    Dim lngLoopCtr As Long
    lngLastRow = Range("B" & Rows.Count).End(xlUp).row
    For lngLoopCtr = 1 To lngLastRow Step 250
        Range("B" & lngLoopCtr & ":B" & lngLoopCtr+249).Copy
        With Sheets("sheet1").Range("A" & lngLoopCtr)
        .PasteSpecial xlPasteValues
        End With
    Next lngLoopCtr
    
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.