Cálculo promediocasillas rango de hojas seleccionadas

Hola, Agradecería enormemente ayuda con esto. Estoy preparando una macro en excel que contiene una determinada cantidad de hojas que las llamo semana1, semana2,... Semana40. Todas con la misma estructura. Tengo una "hojaresumen" donde quiero que me haga los acumulados o el promedio de diferentes celdas de las hojas que yo elija. Por ejemplo, quiero en la casilla A4 de la hojaresumen que ponga el acumulado de las casillas A4 de las hojas desde la semana3 hasta la semana18. Otras veces esto puede variar ya que puede ser desde la seman2 hasta la semana45. Lo mismo sería para que en la casilla A6 de la hojaresumen me calcule el promedio de los valores que están en las casillas A4 de las hojas desde semana3 ... Hasta semanaX. ¿Cómo puedo hacer esto. Muchas gracias por su tiempo.
1

1 respuesta

Respuesta
1
¿Por qué con una macro? Simplemente podrías en la hoja resumen poner la fmla
(En A4)
=suma(semana3:semana18!A4)
pero si lo querés con código deberías hacer algo como
dim w as WorkSheet
acum = 0
for each w in ThisWorkbook.WorkSheets
  if w.Range(algunaCeldaQueValidaQueSUma) = Cumple Then
     acum = acum+w.Range("CeldaASumar")
  end if
next w
Espero que alguna de las 2 opciones te sirvan aunque insisto que si te podes arreglar con las fmlas y podes evitar las macros lo hagas directo con las fmlas
Hola, Agradecería enormemente ayuda con esto. Estoy preparando una macro en excel que contiene una determinada cantidad de hojas que las llamo semana1, semana2,... semana40. Todas con la misma estructura. Tengo una "hojaresumen" en el mismo libro donde quiero que me haga los acumulados o el promedio de diferentes celdas de las hojas que yo elija. Por ejemplo, quiero en la casilla A4 de la hojaresumen que ponga el acumulado de las casillas A4 de las hojas desde la semana3 hasta la semana18. Otras veces esto puede variar ya que puede ser desde la seman2 hasta la semana45. Lo mismo sería para que en la casilla A6 de la hojaresumen me calcule el promedio de los valores que están en las casillas A4 de las hojas desde semana3 ... hasta semanaX. ¿Cómo puedo hacer esto. Muchas gracias por su tiempo.
Muchas gracias por la pronta respuesta. Sin embargo, problema que tengo y que me impide utilizar una función simple es que el rango de las hojas (semanas) de las cuales quiero hacer el acumularo o el promedio es variable. Es decir, unas veces estoy interesado en realizar el acumulado en la casilla a3 de las correspondientes casillas A3 desde la hoja 3 hasta la hoja 8(desde la semana3 hasta la semana8) y otra vez me puede interesar realizar una consulta de los acumulados de una determinada casilla de otro rango de hojas.
Te adjunto un ejemplo de como lo tengo solucionado ahora con fórmulas. EN la casilla a2 y a3 de la hojaresumen, introduzco el número de la semana inicial y final (rango que quiero hacer el acumulado o el promedio. En este caso se trata de realizar un promedio de los valores que están en la N5 de las hojas comprendías en el rango de semanas que introduzca en las casillas ae2 y ae3 de la hojaresumen.
SUMAPRODUCTO(N(INDIRECTO(CONCATENAR("Semana";FILA(INDIRECTO($AE$2&":"&$AE$3)))&"!"&DIRECCION(FILA(N5);COLUMNA(N5)))))/(($AE$3-$AE$2)+1))
Una vez muchas gracias.
Disculpas en la demora, ¿por qué no te sirve la forma que lo tenés con fmlas? Aunque parezcan muy complicadas (como en tu caso), te puedo asegurar que será mucho más rápido que hacer una macro, pero si igual estás interesado podemos ver de hacer algo.

Añade tu respuesta

Haz clic para o