вы можете использовать:
Sub RepeatValuesInA()
Range("B1", Cells(Rows.Count, 2).End(xlUp)).Offset(, -1).SpecialCells(xlCellTypeBlanks).Formula = "=INDEX(R1C:R[-1]C,MATCH(RC[1],R1C2:R[-1]C2,0))"
End Sub
или, если хотите избавиться от формул:
Sub RepeatValuesInA()
With Range("B1", Cells(Rows.Count, 2).End(xlUp)).Offset(, -1)
.SpecialCells(xlCellTypeBlanks).Formula = "=INDEX(R1C:R[-1]C,MATCH(RC[1],R1C2:R[-1]C2,0))"
.Value = .Value
End With
End Sub