Si como describes tu archivo lo que tiene son 5000 filas, y éstas son las que tienen que ser recorridas, lo que tienens que incrementar es el número de fila de la dirección y no la letra de la columna.
Ya sea una cosa u otra lo que desees incrementar, es mucho más útil para lo que pides llamar los rangos mediante la instrucción Cells().
Con Cells() indicas un rango básico (celda) indicando primero su fila y después su columna de manera númerica.
Por ejemplos
Range("A1")
es lo mismo que
Cells(1,1)
(recordar que el primer número es la fila y el segundo la columna).
Para seleccionar más de una celda puedes hacer lo siguiente
Range(Cells(1,1),Cells(1,2))
que es lo mismo que
Range("A1:B1")
Un esbozo de lo que pides sería
Dim i as Integer
Dim Ws as Worksheet
Set Ws = Worksheets("<NombreDeTuHoja>")
i = 2
Do Until Ws.Cells(i,1) = ""
Ws.Range(Cells(i,1),Cells(i+49,<ÚltimaColumna>)).Copy
'<TuDestino>.Paste
'<Código para guardar CSV>
i = i + 50
Loop
(Es un esbozo, no lo copies tal cual o puede que te de error).
Mira lo que te propongo y cualquier cosa lo comentamos.
Un saludo.
Working Into Binary (WIB) - http://workingintobinary.blogspot.com.es/