Saltar al contenido

Ayuda con macro y valores variables

publicado

Saludos a todos, tengo un problema y no se como solucionarlo. Expongo el tema: en un libro tengo varias columnas variables (columnas A-C-D-E), donde en la columna A esta la descripcion del producto, C la referencia, D las unidades y E las medidas a cortar. Necesito crear una macro la cual, al encontrar los mismos valores en la columna E y en la columna C, me sume la columna E, y, además me unifique el resto de columnas. El problema es que los valores de todas las columnas son todas variables. Lo siento si es que no me he sabido expresar bien, adjunto un excel para ver cual es el problema que expongo y como deberia quedar. Ante todo gracias y saludos.

Libro1.xls

Featured Replies

publicado

Si no recibes ayuda esta noche, mañana le echo un vistazo.

publicado
  • Autor

Muchas gracias macro antonio por responder, espero que me podais ayudar. Gracias

publicado

Hola, puede hacerlo con filtros avanzados:

1. Seleccionas A1

2. Filtro avanzados

3. Copiar a otra ubicacion

4. Copiar a G1

5. Registros unicos

6. Ok

7. En J2: =SUMAR.SI(E$2:E$25,K2,D$2:D$25)

8. Arrastrar o doble clic

Haciendolo con la grabadora encendida obtendras un codigo similar a este -depurado:

Sub Macro1()
[A1:E25].AdvancedFilter Action:=xlFilterCopy, CopyToRange:=[G1], Unique:=True
[j2:j15].Formula = "=SUMIF(C$2:C$25,I2,D$2:D$25)"
End Sub[/CODE]

publicado
  • Autor

genial! muchisimas gracias, me ha solucionado el problema, es justo lo que necesitaba, saludos

publicado
  • Autor

Perdona armando, creo que cante victoria antes de tiempo.... resulta que en un primer momento esta solucion me parecio fantastica, el problema es que cuando cambio en la columna A la descripcion tambien cambia la columna G, (esto es correcto), pero la referencia y las medidas de la columna I y K se quedan fijas y, estas, para que me funcione la formula tienen que cambiar con los mismos datos que en las columnas C y E. Alguna sugerencia?

publicado

Hola, intenta

Sub Macro1()
[F1].CurrentRegion.Clear
[A1].CurrentRegion.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=[F1], Unique:=True
[H2:H15].Formula = "=SUMIF(B$2:B$25,G2,C$2:C$25)"
With [F1].CurrentRegion.Offset(1)
.Borders.LineStyle = xlNone
.Resize(.Rows.Count - 1, 4).BorderAround Weight:=xlThin
End With
End Sub[/CODE]

con esta macro, eliminando previamente la columna que tienes oculta:

publicado
  • Autor

muchisimas gracias a los dos. he probado las dos opciones y decir que la de Armando me da error 1004 al pasarlo a mi libro, pero la de macro antonio corre perfecta y hace lo que necesitaba. muchisimas gracias a los dos por vuestras respuestas.

publicado
  • Autor

Perdona Armando, eliminando la columna B como dices corre perfecta, muchisimas gracias

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.