Зачем беспокоиться о выборе диапазонов?Это плохая практика.
Я не совсем понимаю, какова ваша цель, поскольку вы выбираете ячейку ниже последней ячейки столбца G. Я полагаю, вы хотите начать с последнего ряда столбца G до последнего ряда столбца I?Если так ..:
With Workbooks("REFERENCE").Sheets("REFERENCE")
LastrowI = .Cells(.Rows.Count, "I").End(xlUp).Row
LastrowG = .Cells(.Rows.Count, "G").End(xlUp).Row
.Range("G" & LastrowG).FormulaR1C1 = "=IF(RC[2]<0,""40"",""50"")" 'change Range if necessary
.Range("G" & LastrowG).FormulaR1C1.AutoFill Destination:= .Range("G" & LastrowG & ":G" & LastrowI)
End With