Sumar celdas visibles con condición

10 envíos / 0 nuevos
Último envío
mararougier
Imagen de mararougier
Offline
última acción: Hace 2 años 1 mes
alta: 19/10/2016 - 17:39
Puntos: 75
Sumar celdas visibles con condición

Buenas tardes, necesito ayuda necesito sumar el total de cada ingrediente utilizado en una fórmula determinda.

Esta sección ya tiene dos filtros activos.

Agradecería ayuda.

Saludos.

 

FechaHoraPesoCódigo 1Código 2FórmulaLoteIngrediente
18/10/201604:47:0075,20202539001
18/10/201604:48:0059,20202539002
18/10/201604:48:0020,40202539003
18/10/201604:50:00119,40202539004
18/10/201604:50:0042,80202539005
18/10/201604:52:0075,10202539001
18/10/201604:53:0059,30202539002
18/10/201604:53:0020,40202539003
18/10/201604:55:00119,40202539004
18/10/201604:55:0037,30202539005
18/10/201604:56:0075,20202539001
18/10/201604:56:0059,40202539002
18/10/201604:56:0020,20202539003

Etiquetas: 

Cron
Imagen de Cron
Offline
última acción: Hace 2 horas 26 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 11310
Entiendo que lo que quieres

Entiendo que lo que quieres es sumar el peso de cada ingrediente. Colocando tu tabla empezando en A1, tendríamos el último valor de la columna de ingredientes en la fila 14. Se me ocurre hacerte en algún sitio una lista de los ingredientes y a su derecha el total de peso que hay.

A efectos del ejemplo, lo pondremos en la columna B16 hacia abajo (los ingredientes) y C16 hacia abajo (las sumas).

Para hacer una suma condicional, lo normal es utilizar SUMAR.SI

Sin embargo, tú quieres poder filtrar por determinadas columnas, y que te dé la suma de lo que se está viendo, y para eso viene a ayudarnos la fórmula SUBTOTALES. Pero esta función no filtra por criterios, por lo que vamos a hacer un hack para poder filtrar por criterio. Básicamente, lo que vamos a hacer es utilizar un valor TRUE/FALSE, que en Excel tienen valor 1/0, y multiplicar por él, de manera que si se cumple el criterio será verdadero y multiplicará por 1 (lo añadirá a la suma) mientras que si no se cumple, el valor será 0, se multiplicará por el valor y sumará 0. Esto lo haremos con una fórmula que trabaja con una matriz, que será el argumento de SUMAPRODUCTO.

Pasamos a la formulación:

Como dije, empezando por B17 ponemos los ingredientes (1, 2, 3, 4 y 5 en tu ejemplo)

En C17 ponemos esta fórmula:

=SUMAPRODUCTO(SUBTOTALES(9;DESREF($C$2;FILA($C$2:$C$14)-FILA($C$2);;1))*($H$2:$H$14=$B17))

No hace falta entrarla en forma matricial. Con escribirla así es suficiente.

Y esta fórmula la arrastramos hacia abajo para cubrir todos los ingredientes.

Adjunto ejemplo con tus datos. En la columna D he puesto la fórmula SUMAR.SI para comprobación. Si filtras la tabla por cualquier argumento verás como la fórmula en la columna C funciona correctamente, mientras que la de la columna D sigue sumando los datos ocultos.

Un saludo

AdjuntoTamaño
File libro1.xlsx10.53 KB
mararougier
Imagen de mararougier
Offline
última acción: Hace 2 años 1 mes
alta: 19/10/2016 - 17:39
Puntos: 75
Muchas gracias Cron por tu

Muchas gracias Cron por tu respuesta, la probé y me funciona bárbaro.

Pero te consulto por otro lado si no tengo un número determinado de filas la fórmula funciona igual?

Saludos

Cron
Imagen de Cron
Offline
última acción: Hace 2 horas 26 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 11310
Si el número de filas es

Si el número de filas es indeterminado, puedes cambiar la tabla como está por una tabla de excel, y cambiar las referencias por referencias a columnas de la tabla. De esta manera, cuando la tabla crezca, también lo hará la referencia a los datos.

Un saludo

 

AdjuntoTamaño
File libro1.xlsx12.39 KB
mararougier
Imagen de mararougier
Offline
última acción: Hace 2 años 1 mes
alta: 19/10/2016 - 17:39
Puntos: 75
Muchas gracias por tu aporte.

Muchas gracias por tu aporte. Anduvo perfecto!

Saludos.

mararougier
Imagen de mararougier
Offline
última acción: Hace 2 años 1 mes
alta: 19/10/2016 - 17:39
Puntos: 75
Te hago la última pregunta,

Te hago la última pregunta, si despues de hacer un filtro quiero tomar el dato de la primera fila que me queda de un dato como puedo replicarlo en otra hoja.

Por ejemplo si en la fila fórmula tuviera dos y cuando filtro los ingredientes de una pueda sacar de cual.

No se si se entiende.

Saludos.

Cron
Imagen de Cron
Offline
última acción: Hace 2 horas 26 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 11310
Lo siento, la verdad es que

Lo siento, la verdad es que no entiendo qué necesitas.

mararougier
Imagen de mararougier
Offline
última acción: Hace 2 años 1 mes
alta: 19/10/2016 - 17:39
Puntos: 75
Si tengo estos datos en la

Si tengo estos datos en la tabla, colocando la formula que vos me diste obtengo cuando use de cada ingrediente, haciendo antes un filtro por fórmula.

Hasta ahí perfecto, como puedo hacer la obtener despúes de hacer el filtro por fórmula el valor de la primera celda para extraerlo.

Las fórmulas que me diste las puse en una hoja nueva y de esta forma saber cual fórmula corresponde los ingredientes calculados.

TE adjunto un archivo.

Saludos. Gracias

 

AdjuntoTamaño
File libro2.xlsx22.51 KB
Cron
Imagen de Cron
Offline
última acción: Hace 2 horas 26 mins
Nivel 1 - 200 puntosNivel 2 - 500 puntosNivel 3 - 1000 puntosNivel 4 - 2000 puntosNivel 5 - 4000 puntos
alta: 23/06/2010 - 12:30
Puntos: 11310
Después de darle un poco al

Después de darle un poco al coco y de buscar por internet, he encontrado la siguiente fórmula (adaptada a tu tabla):

=SI(SUMA((SUBTOTALES(3;DESREF(Tabla1[Peso];FILA(Tabla1[Peso])-MIN(FILA(Tabla1[Peso]));;1))))=FILAS(Tabla1[Peso]);$C$2;INDICE(Tabla1[Peso];COINCIDIR(1;SUBTOTALES(3;DESREF(Tabla1[Peso];FILA(Tabla1[Peso])-MIN(FILA(Tabla1[Peso]));;1));0)))

Cuando la copies, si pulsas ENTER te dará un error #N/A. Como es una fórmula matricial, para que funcione hay que introducirla pulsando CTRL+MAYS+ENTER. Entonces verás que se introduce toda la fórmula entre llaves {} y sí que te dará el resultado que buscas (que he entendido que es el primer valor de la columna "peso")

Un saludo

mararougier
Imagen de mararougier
Offline
última acción: Hace 2 años 1 mes
alta: 19/10/2016 - 17:39
Puntos: 75
Muchas gracias la voy a

Muchas gracias la voy a probar.

Saludos.