сначала вы должны найти положение вашей активной ячейки
Dim c, r As Integer
r = ActiveCell.Row
c = ActiveCell.Column
Set sht = ActiveSheet
, затем вы можете использовать функцию диапазона, чтобы получить их
with sht
sht.range(.cells(c-7,r) , .cells(c-1,r)).copy
end with
и остаток кода ниже.
PS Я не люблю использовать .copy, поскольку он всегда сталкивается с ошибкой.Я бы предпочел что-то вроде
Workbooks("Box 8.xlsm").Sheets("Fentanyl").Range("B4:B10").value = sht.range(.cells(c-7,r) , .cells(c-1,r)).value