Realizar búsqueda exacta y no aproximada o coincidencia con macro
Estoy empleando este procedimiento para realizar búsqueda de información en una hoja de Excel y llenar un formulario con la información relacionada:
Public Sub P_Buscar_Productos()
Application.ScreenUpdating = False
If Txt_Codigo_Producto.Text = "" Then
MsgBox "Debe suministrar el código de producto para realizar la búsqueda", vbInformation, "Sistema"
Exit Sub
End If
Set h = Sheets("Productos")
Set B = h.Columns("B").Find(Txt_Codigo_Producto.Text)
Set h2 = Sheets("Productos")
If Not B Is Nothing Then
Cells(B.Row, "A").Select
ActiveCell.Activate
End If
If Not B Is Nothing Then
Me.Txt_Registro.Text = h.Cells(B.Row, "A")
Me.Txt_Categoria.Text = h.Cells(B.Row, "C")
Me.Txt_Id.Text = h.Cells(B.Row, "A")
Me.Cmb_Nombre.Value = h.Cells(B.Row, "I")
Me.Txt_Presentacion.Text = h.Cells(B.Row, "K")
Me.Txt_U_Medida.Text = h.Cells(B.Row, "N")
Me.Txt_Existencias.Text = h.Cells(B.Row, "R")
If Me.Txt_Id.Text = "" Then
MsgBox "El producto No. " & Txt_Codigo_Producto.Text & " no registra en el sistema", vbInformation, "Almacén ESM 3010"
Me.Txt_Codigo_Producto.SetFocus
Exit Sub
End If
End If
Application.ScreenUpdating = True
End SubEl problema radica en que, si realizo la búsqueda de un producto que tenga el código 1058 que sería por ejemplo JABóN, pero si hay antes otro producto con un código más largo que también tenga 1058, por ejemplo 7702410586541 o, 770251451058, me trae la primera coincidencia donde esté "1058" y no me trae específicamente el código 1058 nada más.
¿Cómo puedo corregir ese problema?
1 Respuesta
Respuesta de Dante Amor
1