Error en textbox al buscar valor de combobox

Para Dante Amor.

Saludos, después de actualizar el código que me diste ahora me presenta el error en los textbox

Inclusive si el valor de combobox es correcto, el error me lo da al escribir (11), también si fuera posible

Quisiera agregar otro textbox o el que funcione que me muestre el valor total de venta, que seria algo asi

Valor de textbox3 * textbox1

Te agradezco por tu valiosa ayuda y comprensión.

Private Sub ComboBox1_Change()
'Act.Por.Dante Amor
If ComboBox1.Value = "" Then Exit Sub
Set b = Sheets("Resumen").Range("datos").Find(ComboBox1.Value, LookIn:=xlValues, lookat:=xlWhole)
If Not b Is Nothing Then
dire = b.Address(False, False)
TextBox4 = Sheets("Resumen").Range(dire).Offset(0, 1)
TextBox5 = Sheets("Resumen").Range(dire).Offset(0, 5)
TextBox3 = Sheets("Resumen").Range(dire).Offset(0, 3)
TextBox3 = Format(TextBox3, "¢ ##,##0.00")

Else
MsgBox "Código no existe"
End If
End Sub

Adjunto link de archivo

https://drive.google.com/file/d/0B798EFGaiKE0b1J4Tk02RE9KTkE/view?usp=sharing 

1 respuesta

Respuesta
1

¿Y qué mensaje de error te aparece? ¿Y en cuál línea de la macro se detiene?

al digitar 11 el error que me dice  no se puede configurar la propiedad VALUE ,  TextBox4 = Sheets("Resumen").Range(dire).Offset(0, 1)

al digitar 2 el error que me dice  no se puede configurar la propiedad VALUETextBox5 = Sheets("Resumen").Range(dire).Offset(0, 5) 

Necesito ver cómo tienes los datos en la hoja.

Envíame tu archivo con tu formulario.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “Wil CM” y el título de esta pregunta.

Gracias ya te e enviado la información.

Revisa el resultado de las fórmulas que tienes en las celdas. Si tienes algún tipo de error, por ejemplo #N/A, #NOMBRE, etc., entonces la macro te envía un error.

Ya probé tu formulario con el 11 y con el 2; y no me regresa ningún error.

Exactamente qué mensaje de error te aparece, puedes escribir el error completo.

Para descartar el error en la celda, puedes poner la instrucción On Error Resume Next

Private Sub ComboBox1_Change()
'Act.Por.Dante Amor
    If ComboBox1.Value = "" Then Exit Sub
    Set b = Sheets("Resumen").Range("datos").Find(ComboBox1.Value, LookIn:=xlValues, lookat:=xlWhole)
    If Not b Is Nothing Then
        dire = b.Address(False, False)
        On Error Resume Next
        TextBox4 = Sheets("Resumen").Range(dire).Offset(0, 1)
        TextBox5 = Sheets("Resumen").Range(dire).Offset(0, 5)
        TextBox3 = Sheets("Resumen").Range(dire).Offset(0, 3)
        TextBox3 = Format(TextBox3, "¢ ##,##0.00")
    Else
        MsgBox "Código no existe"
    End If
End Sub

Si ya corregiste el error en la celda y ya no tienes problemas, recuerda valorar la respuesta.

te e devuelto el correo , gracias

La búsqueda la estabas haciendo en todas las celdas del rango "datos"; solamente hay que buscar en la columna "A".

Otro de los inconvenientes, es que utilizas la instrucción offset, en lo personal no me gusta utilizarla, ya que no te muestra en cuál columna te encuentras, y al momento de rastrear errores o resultados, se hace más complicado.

Te anexo la macro actualizada.

Private Sub ComboBox1_Change()
'Act.Por.Dante Amor
    If ComboBox1.Value = "" Then Exit Sub
    Set h = Sheets("Resumen")
    Set b = h.Range("A:A").Find(ComboBox1.Value, LookIn:=xlValues, lookat:=xlWhole)
    If Not b Is Nothing Then
        TextBox4 = h.Cells(b.Row, "B")
        TextBox5 = h.Cells(b.Row, "F")
        TextBox3 = h.Cells(b.Row, "D")
        TextBox6 = Val(TextBox3.Value) * Val(TextBox1.Value)
        TextBox3 = Format(TextBox3, "¢ ##,##0.00")
        TextBox6 = Format(TextBox6, "¢ ##,##0.00")
      Else
        MsgBox "Código no existe"
    End If
End Sub
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas