Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I'm looking for VBA code that will autofill data down according to the length of an adjacent column. I know there are a few ways to go about this, but which is best?:

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

or something like:

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

I'm pretty sure neither of these work exactly how I want it so what am I missing?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
969 views
Welcome To Ask or Share your Answers For Others

1 Answer

There is no need for any if condition. We can get the last used row of column C and fill the data in column D accordingly.

Sub test()

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

End Sub

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...