Ayuda con actualización de stock en excel

Hola...

Estoy creando una base de datos para llevar un control de compra-venta de videojuegos. La tengo ya casi finalizada.
Tengo 5 hojas, pero para lo que no llego solo utilizo tres (stock, compras y ventas)
He conseguido mediante la fórmula "sumar.si" actualizar el "stock final" en la hoja stock desde la hoja compras y desde la hoja ventas.
Pero necesito que al borrar una compra/venta (en cada página tengo un botón con una macro de borrar compra/borrar venta) se mantenga el stock final y no vuelva al stock inicial.

A ver si alguien me puede ayudar... Sea si o sea no... Gracias por la respuesta o en todo caso por la lectura de mi pregunta... Un saludo.

1 respuesta

Respuesta
1

Me puedes enviar tu archivo con las macros y me explicas qué debo hacer para borrar una compra y cuál es el resultado que esperas en el stock final. Todo me lo explicas con ejemplos.

Vale... Ya tienes el archivo en el correo que me mandaste y la explicación... Cualquier duda/sugerencia/consejo me lo dices al correo...

UN saludo y GRACIAS:

Te anexo una macro para llevar el control del stock, con esta macro se reemplaza tu fórmula.

Sub RegistrarCompra()
'Por.Dante Amor
'Registra Compra en entradas, en stock y limpia el formulario
'
    Application.ScreenUpdating = False
    Set h1 = Sheets("STOCK")
    Set h2 = Sheets("ENTRADAS")
    Set h3 = Sheets("COMPRAS")
    '
    For i = 18 To 30
        If h3.Cells(i, "B") = "" Then Exit For
        Set b = h1.Columns("B").Find(h3.Cells(i, "C"), lookat:=xlWhole)
        If Not b Is Nothing Then
            'Actualiza stock
            h1.Cells(b.Row, "O") = h1.Cells(b.Row, "O") + h3.Cells(i, "E")
        End If
        'Actualiza Entradas
        u2 = h2.Range("A" & Rows.Count).End(xlUp).Row + 1
        h2.Cells(u2, "A") = h3.[B12]
        h2.Cells(u2, "B") = h3.[B15]
        h2.Cells(u2, "C") = h3.[F7]
        h2.Cells(u2, "D") = h3.Cells(i, "B")
        h2.Cells(u2, "E") = h3.Cells(i, "C")
        h2.Cells(u2, "F") = h3.Cells(i, "D")
        h2.Cells(u2, "G") = h3.Cells(i, "E")
        h2.Cells(u2, "H") = h3.Cells(i, "F")
    Next
    'Limpia formulario
    h3.Range("F7").ClearContents
    h3.Range("D18:E30").ClearContents
    h3.Range("F7").Select
    Application.ScreenUpdating = True
    MsgBox "Compra registrada"
End Sub

Saludos.Dante Amor

Recuerda valorar la respuesta.

Siiiii funciona a la perfección...muchísimas gracias-...

Al final de mi respuesta dice: “Es una buena respuesta” y puedes seleccionar una de 3 opciones:

  • Excelente
  • Si
  • No

Podrías valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas