Pregunta sobre SUMAR. SI

Hola!
Tengo un problema que es el siguiente.
En una hoja Excel, por ejemplo la Hoja3, tengo la siguiente información:
Columna1 Columna2
252 47001
458 47001
879 47005
741 47009
002 47001
666 47005
777 47005
852 47009
Y así muchos más valores en ambas columnas.
Lo que quiero hacer es devolver en otra hoja Excel, por ejemplo la Hoja2, en una columna la suma de los valores de la Columna1 correspondientes a los valores de la Columna2, es decir,
sumar los valores correspondientes al 47001 y ponerlo en una casilla, sumar los valores asociados al 47005 y ponerlos en la casilla de debajo, sumar los valores asociados al 47009
y ponerlos en casilla de debajo tal que así:
712
2322
1593
Se me ha ocurrido utilizar la función SUMAR.SI
Primero he realizado una macro para ver el código generado por la función SUMAR.SI y luego a ese código le he añadió el bucle For Each para automatizar más la cosa y ahí empiezan mis problemas.
El aspecto que tiene esto es el siguiente:
For Each x In Worksheets("Sheet3").Range("B2:B9").Cells
Sheets("Hoja3").Select
ActiveCell.FormulaR1C1 = _
"=SUMIF(R[-3]C[-1]:R[4]C[-1],""=x"",R[-3]C[-2]:R[4]C[-2])"
Worksheets("Hoja2").Range("C2:C9").Select
Pero no me funciona, da error de fuera de rango. Tampoco se si estoy implementando bien el
bucle For Each ni la inclusión del valor por dentro del código de la macro.
Gracias por la ayuda prestada, David.

1 respuesta

Respuesta
1
Creo que podrías resolver tu problema de una manera mucho más efectiva utilizando una tabla dinámica.
Encontrás que las tablas dinámicas son un método moderno y flexible de agrupar y analizar daqtos de una manera muy rápida. Te recomiendo ampliamente adentrarte en el tema, ya que te ahorarn mucho dolores de cabeza y sobre todo tiempo.
1:Selecciona las columnas de tu hoja3, incluyendo el titulo.
2:En el menu datos selecciona la opción Informe de Tablas y Gráificos Dinámicos ( Pivot Table).
3: Presiona el Botón Finalizar.
4:En la Tabla que el asistente te generó, arrastra la columna 1 a las filas y la columna 2 al área de datos.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas