Alguien me ayuda con esta macros

Tengo lo siguiente en la Hoja1
A B C
FECHA CÓDIGO CANTIDAD
10-abr VO-01 420
10-abr VO-01 210
10-abr VO-02 735
10-abr VO-02 35
10-abr VO-03 840
10-abr VO-05 630
10-abr VO-05 35
10-abr VO-06 105
10-abr VO-06 805
11-abr VO-07 315
11-abr VO-07 525
11-abr VO-06 910
11-abr VO-06 70
11-abr VO-05 210
11-abr VO-05 665
11-abr VO-03 175
11-abr VO-03 665
11-abr VO-02 175
11-abr VO-02 70
11-abr VO-01 245
11-abr VO-01 525
Lo que quiero hacer es una macros que realice en la hoja2 la siguiente suma
FECHA CÓDIGO CANTIDAD
10-abr VO-01 630
10-abr VO-02 770
10-abr VO-03 840
10-abr VO-05 665
10-abr VO-06 910
11-abr VO-01 770
11-abr VO-02 245
11-abr VO-03 840
11-abr VO-05 875
11-abr VO-06 980
11-abr VO-07 840


estaría agradecido porque no domino mucho lo que es macros y necesito realizar esta operación.

Muchas gracias

escribe tu código aquí

1 Respuesta

Respuesta
1

¿Y tiene que ser con una macro?

Porque podrías hacerlo con una tabla dinámica, con la tabla, puedes obtener ese resultado y también puedes obtener otros más.

Si quieres te explico como funciona una tabla dinámica.

Revisa este video con un ejemplo para crear una tabla dinámica y me comentas.

https://www.dropbox.com/s/vax56thrt28jbxb/tabla%20dinamica.wmv

Saludos. Dam

Hola muchas gracias por contestarme, si tiene q ser en macro porque tengo que realizar reportes y registros ademas búsquedas con visual, de ahy la necesidad de tenerlo como base de datos

Te envío la macro

Sigue las Instrucciones para ejecutar la macro
1. Abre tu hoja de excel
2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
3. En el menú elige Insertar / Módulo
4. En el panel del lado derecho copia la macro
5. Para ejecutarla presiona F5

Sub acumula_hoja2()
'por.dam
Set h1 = Sheets("Hoja1")
Set h2 = Sheets("Hoja2")
h1.Select
h1.Columns("A:C").Select
Selection.Sort Key1:=h1.Range("A2"), Order1:=xlAscending, Key2:=h1.Range("B2"), _
    Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _
    Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal
fe_ant = h1.Range("A2")
co_ant = h1.Range("B2")
j = 2
Subtotal = 0
h2.Cells.Clear
h1.Rows(1).Copy h2.Rows(1)
For i = 2 To h1.Range("A" & Rows.Count).End(xlUp).Row + 1
    If fe_ant = h1.Cells(i, "A") And _
       co_ant = h1.Cells(i, "B") Then
       Subtotal = Subtotal + Cells(i, "C")
    Else
        h2.Cells(j, "A") = fe_ant
        h2.Cells(j, "B") = co_ant
        h2.Cells(j, "C") = Subtotal
        j = j + 1
        Subtotal = 0
        fe_ant = h1.Cells(i, "A")
        co_ant = h1.Cells(i, "B")
        Subtotal = Subtotal + Cells(i, "C")
    End If
Next
MsgBox "Proceso terminado", vbInformation, "SUMA"
End Sub

Saludos.Dam

Hola Dam

Lo acabo de probar y es justamente lo que necesitaba muchas gracias por tu ayuda y tu respuesta tan pronta.

Muchas gracias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas