Então, algo assim irá pegar o intervalo A1: 10 e copiá-lo para C1: D10
Sub test()
Range("A1:B10").Copy
Range("C1").PasteSpecial xlPasteValues
End Sub
O que precisamos é uma maneira de calcular o tamanho do intervalo e usá-lo enquanto iteramos. Algo como isso deve funcionar -
Sub test()
Dim start As Integer
Dim finish As Integer
Dim change As Integer
start = Range("BF1").Column
finish = Range("DJ293").Column
change = finish - start
For i = 1 To 238
Range(Cells(1, start), Cells(293, finish)).Copy
Cells(1, finish + 1).PasteSpecial xlPasteValues
start = (Cells(1, finish + 1).Column)
finish = start + change
Next
End Sub