Textbox resta un valor de una columna

Tengo este formulario en excel... La idea es que en la parte que dice cantidad entregada pueda poner la cantidad que entrego y me la reste en la hoja inventario a las que están. Agradezco su ayuda

Respuesta
1

¿Y de todos los registros que tienes en la hoja inventario debe restar?

¿Y de todos los registros que tienes en la hoja inventario, a cuál de esos registros debe restar?

La cantidad entregada en la casilla del formulario debería restar a la celda cantidad en inventario teniendo en cuenta el producto. Ejemplo ... arriba dice chaleco rojo, debería en inventario/cantidad del chaleco rojo restar 2 unidades que aparecen en cantidad entregada

Prueba el siguiente código

Cambia en el código, Combobox1 por el nombre de tu combo de medicamentos y Textbox2, por el nombre de tu textbox de cantidad, en estas líneas:

  Set tCantidad = TextBox2
  With ComboBox1

El código, supongo, va en el botón, cambia CommandButton1 por el nombre de tu botón.

Private Sub CommandButton1_Click()
  Dim f As Range
  Dim tCantidad As MSForms.TextBox
  '
  Set tCantidad = TextBox2
  '
  'combo medicamentos
  With ComboBox1
    If .ListIndex = -1 Then
      MsgBox "Selecciona un medicamento"
      .SetFocus
      Exit Sub
    End If
    'textbox cantidad
    If tCantidad.Value = "" Then
      MsgBox "Captura una cantidad"
      tCantidad.SetFocus
      Exit Sub
    End If
    '
    Set f = Range("A:A").Find(.Value, , xlValues, xlWhole, , , False)
    If f Is Nothing Then
      MsgBox "El medicamento seleccionado no existe"
      .SetFocus
      Exit Sub
    Else
      f.Offset(, 1).Value = f.Offset(, 1).Value - tCantidad.Value
      MsgBox "Cantidad actualizada"
      .Value = ""
      tCantidad.Value = ""
    End If
  End With
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas