autofill down according to adjacent column

excel, vba

Solution

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

Problem

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?

Original source