如何遍历VBA

时间:2017-08-06 20:29:15

标签: excel vba excel-vba loops

我正在尝试用宏来拖动列。我刚录制了一个拖动列的宏。有没有办法我可以放一个循环拖下我所有的列?

我想出了这个,但它不起作用。拖动第一列后,此代码停止工作。

Sub Macro3()
    '
    ' Macro3 Macro
    '
    For i = 1 To 100

        Selection.AutoFill Destination:=ActiveCell.Range("A1:A4")
        ActiveCell.Range("A1:A4").Select
    Next i
End Sub

如何让它在我拥有的所有100列上都能正常工作?我正在努力学习这一点,感谢任何帮助。

1 个答案:

答案 0 :(得分:2)

将.AutoFill切换为.FillDown并立即执行所有操作。

dim rws as long
rws = 4
with worksheets("sheet1")
    with .range(.cells(1, "A"), .cells(1, .columns.count).end(xltoleft))
        .resize(rws ,.columns.count).filldown
    end with
end with

将rws设置为总行数或找出确定行总数的其他方法。