Если я вас правильно понимаю, у вас есть формула в столбце B, которая обновляется все время, и вы хотите «снимок» значений каждые 5 минут.
Для этого вы можете просто использовать range(destinationRange).Value = range(sourceRange).Value
Чтобы выполнить вычисление, простой цикл выполнит хитрость:
With Worksheets("Sheet1")
Dim i as Long
For i = 1 to 98
If IsNumeric(.Cells(i,3).Value) then
.Cells(i,3).Value = .Cells(i,2).Value - .Cells(i,3).Value
Else
.Cells(i,3).Value = .Cells(i,2).Value
End If
Next
End With
Вместо копирования диапазона.