18

我正在寻找将根据相邻列的长度自动填充数据的 VBA 代码。我知道有几种方法可以解决这个问题,但哪种方法最好?:

If LastRow > Selection.Row Then
   Range("D2").AutoFill Destination:=Range("D2:D" & LastRow)

或类似的东西:

If Not IsEmpty(ActiveCell.Offset(0,1)) Then
   Range("D2").AutoFill Destination:=Range("D2:D" & LastRow)

我很确定这些都不是我想要的,所以我错过了什么?

4

1 回答 1

26

不需要任何 if 条件。我们可以得到 C 列最后使用的行,并相应地在 D 列中填充数据。

Sub test()

    Dim lastRow As Long
    lastRow = Range("C" & Rows.Count).End(xlUp).Row
    Range("D2").AutoFill Destination:=Range("D2:D" & lastRow)

End Sub
于 2013-07-24T00:26:05.903 回答