Como escribir renglones variables en una formula macro de excel?

Estoy haciendo una macro que extrae y suma los datos de la misma celda de una serie de libros en un intervalo de celdas pero no se como definirla; me explico, tengo un numero variable de libros (depende de los días de la semana requeridos), cada uno de esos libros son en formato exactamente iguales y tengo que sacar un libro "resumen" de todos ellos sumando en el libro final cada una de las celdas de un rango X, he definido lo siguiente:

Range("AA40").Select

ActiveCell.FormulaR1C1 = _
"=+INDIRECT(""'[""&R21C30&""'!D9"")+INDIRECT(""'[""&R22C30&""'!D9"")"
Range("AB40").Select
ActiveCell.FormulaR1C1 = _
"=+INDIRECT(""'[""&R21C30&""'!E9"")+INDIRECT(""'[""&R22C30&""'!E9"")"
Range("AC40").Select
ActiveCell.FormulaR1C1 = _
"=+INDIRECT(""'[""&R21C30&""'!F9"")+INDIRECT(""'[""&R22C30&""'!F9"")"

Etc

Se puede ver los valores que son fijos y los que van variando (las celdas), ¿cómo puedo ahorrarme escribir 50 lineas en alguna clase de loop que incremente esas ubicaciones de celdas?

Respuesta
1

H o l a:

Te anexo la macro

Sub formular()
'Por.Dante Amor
    col = Columns("AA").Column
    For i = Columns("D").Column To Columns("Z").Column
        celda = Cells(9, Columns(i).Column).Address(False, False)
        Cells(40, col).FormulaR1C1 = _
            "=+INDIRECT(""'[""&R21C30&""'!" & celda & """)+INDIRECT(""'[""&R22C30&""'!" & celda & """)"
        col = col + 1
    Next
End Sub

La macro te va a crear fórmulas desde la D hasta la Z, cambia las columnas en esta línea de la macro:

For i = Columns("D").Column To Columns("Z").Column


Añade tu respuesta

Haz clic para o

Más respuestas relacionadas