Excel - sumar celdas repetidas y copiarlos a otra hoja

 
Vista:
sin imagen de perfil
Val: 7
Ha aumentado su posición en 3 puestos en Excel (en relación al último mes)
Gráfica de Excel

sumar celdas repetidas y copiarlos a otra hoja

Publicado por Jesus (1 intervención) el 30/09/2020 00:00:15
Hola amigos!
Soy nuevito en este tema de macros, les pido por favor una mano en este desafio. Tengo una Base de Datos semejante al del archivo adjunto. Necesito una macro que sume las filas repetidas de las columnas Campo 4, Campo 5, Campo 6 y el resultado que la copie en otra hoja, asi como las filas que no se repiten. Ademas debe copiar en la otra hoja los datos de las columnas Campo 1, Campo 2, Campo 3 y Campo 7 en la misma fila del resultado de las sumas. En resumen: Necesito una macro que copie los reslatados en negritas, en el archivo adjunto, en otra hoja.
Desde ya, muy agradecido
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
-1
Responder
sin imagen de perfil
Val: 9
Ha aumentado su posición en 3 puestos en Excel (en relación al último mes)
Gráfica de Excel

sumar celdas repetidas y copiarlos a otra hoja

Publicado por miguelZarate (3 intervenciones) el 30/09/2020 00:14:50
Agrega lo que lleves al momento,
que haz intentado?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de David
Val: 211
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

sumar celdas repetidas y copiarlos a otra hoja

Publicado por David (40 intervenciones) el 30/09/2020 20:23:31
Hola, con VBA sería así(debes crear una hoja y llamarla "RESULTADO", no olvides escribir en ella los titulos de las columnas):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Sub Consolidar()
'@dj.vivanco
 
    Dim hjResultado As Worksheet
    Set hjResultado = Sheets("RESULTADO")
 
    fila = 2
    filaRes = 2
 
    Do
 
        SUMA4 = 0
        SUMA5 = 0
        SUMA6 = 0
 
        Do
            Campo1 = Cells(fila, "A").Value
            Campo2 = Cells(fila, "B").Value
            Campo7 = Cells(fila, "G").Value
 
            Campo3 = Cells(fila, "C").Value
 
            Campo4 = Cells(fila, "D").Value
            Campo5 = Cells(fila, "E").Value
            Campo6 = Cells(fila, "F").Value
 
            SUMA4 = Campo4 + SUMA4
            SUMA5 = Campo5 + SUMA5
            SUMA6 = Campo6 + SUMA6
 
            fila = fila + 1
 
        Loop Until Campo3 <> Cells(fila, "C")
 
 
        'escribo a hoja RESULTADO
        With hjResultado
            .Cells(filaRes, "A").Value = Campo1
            .Cells(filaRes, "B").Value = Campo2
            .Cells(filaRes, "C").Value = Campo3
            .Cells(filaRes, "G").Value = Campo7
 
            .Cells(filaRes, "D").Value = SUMA4
            .Cells(filaRes, "E").Value = SUMA5
            .Cells(filaRes, "F").Value = SUMA6
 
        End With
 
        filaRes = filaRes + 1
 
 
   Loop Until Cells(fila, "C").Value = vbNullString
 
 
End Sub





Aunque lo mejor es como dice el Experto Nº1, utilizando tablas dinámicas.
Cordial Saludo.
Screenshot_2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar