VBA代码将系列向下填充到下一个空白单元格一次

我正在尝试做一些我认为非常简单的事情,但是我被困在了一部分代码中。

我需要代码来查看列A中的数字的最后一行,然后填充一次,即A20 = 0019 A21 = 0020

Dim LastRow As Variant Dim LastBlankRow As Variant LastRow = Range("A" & Rows.Count).End(xlUp).Offset(0).Select LastRow2 = Range("A" & Rows.Count).End(xlUp).Offset(1).Select Selection.AutoFill Destination:=Range(LastRow & LastBlankRow), Type:=xlFillDefault 

我开始使用这个代码,并将其开发到上面的一个,但是当input更多的数据时,我的范围会随着每次更改。

 Range("A20").Select Selection.AutoFill Destination:=Range("A20:A21"), Type:=xlFillDefault Range("A20:A21").Select 

我想象它简单的东西,我错过了,但我无法弄清楚。

谢谢!

不要依赖于ActiveSheet ,总是限定您的RangeRowsWorksheet对象。

 Option Explicit Sub FillOneDown() Dim LastRow As Variant With Worksheets("Sheet1") ' modify "Sheet1" to your sheet's name LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row .Range("A" & LastRow).AutoFill Destination:=.Range(.Cells(LastRow, "A"), .Cells(LastRow + 1, "A")), Type:=xlFillDefault End With End Sub