Buenas noches,
tengo un problemilla con el Excel, a ver si alguno me podria echar un
cable. Necesito sumar una tabla que esta en cada hoja de un libro en
una hoja nueva. Para ir haciendo la suma, utilizo una variable de
contador que va pasando de fila en fila de la tabla, la sintaxis es
esta:
iFila = 6
Do While iFila < 23
ActiveSheet.Cells(iFila, 2).Formula = "=SUM('" & Desde & ":" &
Hasta & "'!I" & iFila & ")"
ActiveSheet.Cells(iFila, 3).Formula = "=SUM('" & Desde & ":" &
Hasta & "'!J" & iFila & ")"
ActiveSheet.Cells(iFila, 4).Formula = "=SUM('" & Desde & ":" &
Hasta & "'!K" & iFila & ")"
ActiveSheet.Cells(iFila, 5).Formula = "=SUM('" & Desde & ":" &
Hasta & "'!L" & iFila & ")"
ActiveSheet.Cells(iFila, 7).Formula = "=SUM('" & Desde & ":" &
Hasta & "'!N" & iFila & ")"
ActiveSheet.Cells(iFila, 8).Formula = "=SUM('" & Desde & ":" &
Hasta & "'!O" & iFila & ")"
ActiveSheet.Range("I" & iFila).Value = "=H" & iFila & "/C" & iFila
& ""
ActiveSheet.Range("I" & iFila).NumberFormat = "##0.00 %"
ActiveSheet.Cells(iFila, 10).Formula = "=SUM('" & Desde & ":" &
Hasta & "'!Q" & iFila & ")"
ActiveSheet.Range("K" & iFila).Value = "=H" & iFila & "/J" & iFila
& ""
iFila = iFila + 1
Loop
Abajo de todo hago un calculate para que recalcule los sumatorios y
quede todo correcto. El nombre de la primera y de la ultima hoja se
introducen en un form y se asignan a las variables Desde y Hasta. Cada
hoja representa un dia, su nombre es dd-mm-aa.
El codigo funciona perfectamente mientras el rango tenga el primer
digito igual, es decir, si pido que sume del 1 al 9 o del 10 al 19, no
problem; pero si pido que sume del 5 al 15 el resultado de la formula
que meto arriba se cambia solo y pasa a ser algo asi:
=SUMA('05-01-07:[15-01-07]15-01-07'!I6)
Es decir, la segunda fecha se mete entre corchetes y luego la pone
otra vez. Si hago el sumatorio a mano (seleccionando el rango con el
mouse), sale la misma formula del codigo pero sin el corchete, y
funciona perfectamente.
Alguien puede echarme una mano?
Mil gracias.
Khan.
Leer las respuestas