Macro que busca el mismo valor y que después hacer una suma de unos datos de ese mismo valor

Estoy intentando hacer una macro que busca en un rango (por ejemplo, A11:E14), en este rango hay números repetido y después me haga una suma en una celda en concreto (por ejemplo, en la celda existe número 172 tres veces y asociado a éstos 50 kg, 20 kg y 10 kg respectivamente ) y que la macro me posicione 172 en la celda A14 y la suma de los kilos en la celda B14 así de forma sucesiva para deferentes números. No sé si me he explicado :(

2 respuestas

Respuesta

Has probado a usar la función SUMAR. ¿SI y el procedimiento Quitar duplicados? Creería que combinados pueden ayudarte con tu situación sin necesidad de recurrir a una macro. Te dejo los links de ayuda de Office para esos temas:

Quitar duplicados

Sumar.Si

Quedo pendiente de tu éxito.

Respuesta
-1

¿No te vale una tabla dinámica?

Hola, he probado con suma si, sumar si conjunto y la tabla dinámicas también pero no sale bien al tener celdas vacías.  gracias

Creo que si pones dos imágenes, una e como están los datos y la segunda de como deberían quedar te podremos ayudar porque no esta muy clara la pregunta.

Esto es lo que quiero hacer, al final del día se contabiliza todo en función del lote y destino. Hacer un macro que me rellene todo esos datos de forma automática. No sé si lo que pido se puede o no... muchas gracias

¿El mismo nº de lote puede tener diferentes tipos de frutas o no?

Buenos días, el lote va asociado al destino. gracias

Te dejo un xls en dropbox para que puedas ver como lo he solucionado mediante fórmulas como K.ESIMO.MENOR, SUMAR. SI. CONJUNTO, BURCARV etc etc

https://www.dropbox.com/s/7u8b2gmgwyw604l/Frutas.xlsx?dl=0 

Entiendo que los datos que realmente necesitas para contabilizar es nº de lote, kilos y destino

He puesto una columna de base de datos, sonde deberías poner el tipo de frutas de que dispones (por si quieres calcular los kilos por tipo de fruta de cada día)

Buenas! he visto su propuesta y funciona perfectamente. Pero cuando copio la misma tabla que le he proporcionado en el lado derecho de la hoja (se supone que hay 2 almacenes), en la zona donde están el resumen (lotes, kilos y destinos) en la primera fila no funciona y en cambio el resto funciona perfectamente...tiene algo que ver con que he puesto la tabla ahí? es decir, de forma paralela habiendo dos tablas? gracias!!

Buenas! he probado con su solución y funciona perfectamente, pero cuando pego otra tabla en la parte derecha, es decir de forma paralela, la primera fila de la zona de resumen no funciona bien...tienen algo que ver por posicionar dos tablas?

Tienes que revisar los rangos de las fórmulas y mirar si son absolutas o relativas (con o sin el signo $) y modificarlos según te convenga

Buenas, he cometido un error de no decirte que el LOTE lleva una letra al principio de la numeración y en el momento que pongo letra la función k.esimo.menor deja de funcionar...existe otra función para este caso?

muchas gracias

¿El mismo numero de lote puede tener varias letras? ¿Las letras son aleatorias o siguen un patrón?

Hola, el mismo lote con una sola letra al principio de la numeración tipo: A1701234... y B1701456...

gracias

He utilizado un par de columnas auxiliares, aquí lo dejo

https://www.dropbox.com/s/wfrszz6861hq371/Frutas2.xlsx?dl=0 

Buenas,

Creo que no he explicado bien, en la zona de resumen tiene que aparece todos los datos de la zona de registro, es decir, si un lote tiene una letra esa letra tiene que aparecer también. Por eso quería hacer una macro que agrupa datos repetidos y realizar operaciones. En vuestra página he encontrado un código que es lo que yo me refiero pero se debe adaptar a mis necesidades y no soy capaz de entender porque no me funciona...aquí le dejo el código a ver si me podrías ayudar:

Sub resumen()
'4c7569735f50
Range("A2").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Range("E2").Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveSheet.Range("E2:E65535").RemoveDuplicates Columns:=1, Header:=xlNo
Range("F2").Select
ActiveCell.FormulaR1C1 = "=SUMIFS(C[-3],C[-5],RC[-1])"
Range("F2").Select
Selection.AutoFill Destination:=Range("F2:F" & Application.WorksheetFunction.CountA(Range("e2:e65536")) + 1)
End Sub

gracias

Modificando un poco las fórmulas ya se puede obtener tal como necesitas

https://www.dropbox.com/s/1lybfvuyfvbe0qq/Frutas3.xlsx?dl=0 

ok, me lo miro y le digo algo! eres un crack

¿Cómo fue?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas