.19.01.17
Buenas, Paul
Lo que sigue es un bucle o ciclo For... Next que te permitirá repetir lo que hace tu macro en cada columna:
Sub tuMacro()
PrimCelda = "A4"
CantCols = Range(PrimCelda).CurrentRegion.Columns.Count
For LaColumna = 0 To CantCols - 1
Range(PrimCelda).Offset(0, LaColumna).Select
'
'tu rutina
'
Next
End Sub
Al inicio le indicarás en qué celda empieza tu base de datos.
A partir de esa información, el procedimiento cuenta las columnas que tiene ese rango.
Luego inicia el ciclo desde la primera columna.
Probablemente tengas que modificar algunas instrucciones para que considere el número de columna en que está trabajando en cada ciclo.
A modo de ejemplo te dejé una linea de comando que selecciona la primera celda de la columna en que tenga que ejecutar tu subrutina.
Dede luego, dependerá de lo que haga, pero creo que te darás una idea.
.