Jump to content
juandi

programación con lectora

Recommended Posts

Hola como están? Estoy programando una lectora de codigo de barras, lo que lee la lectora lo coloca en TEXTBOX, el problema que me surge es que necesito validar que el código leido figiura en los articulos cargados, para esto cuando se ejecuta el change, pero es rápido y solo me lee el primir digito, el codigo de barra es 7845115, y solo lee el 7 y me dice que el codigo no existe, y no encintro Timer en vb de excel. Como hago para que el change se ejecute lugo de un par de segundo, para que le de tiempo a cargarse todpos los digitos en el textbox. Abajo dejo el codigo. Muchas gracias

 

Private Sub txtbarra_Change()

Dim a As String
Dim paso As Boolean
a = 1
Do While Not Sheets("Articulos").Cells(a, 1) = ""
If Sheets("Articulos").Cells(a, 12) = txtbarra.Text Then
                TextBoxDescripcion = Sheets("Articulos").Cells(a, 2)
                TextBoxUDM = Sheets("Articulos").Cells(a, 4)
                TextBoxDescuentoItem = Sheets("Articulos").Cells(a, 9)
                TextBoxInventario = Sheets("Articulos").Cells(a, 12)
                TextBoxUnitario = Sheets("Articulos").Cells(a, 12)
                TextBoxCantidad = 1
                paso = True
                Exit Do
         
End If
 a = a + 1
Loop

If paso = False Then
             MsgBox "Código Incorrecto.", vbInformation
             txtbarra.Text = ""
             Exit Sub
End If

end sub

Share this post


Link to post
Share on other sites
Hace 14 horas, Haplox dijo:

¿No será por esto? :rolleyes:. Si a un string le sumas 1 da... nada


Dim a As Long

 

Buenas tardes, me parece que no es por el tipo de variable. Al estar en el evento change de un textbox, cuando paso la lectora por un codigo de barras, al detectar el cambio se ejecuta, pero el tema es que no alcanza a leer todo el lago del codo ya con el primer digito se ejecuta el evento, no se como hacer para que despues de un par de segundo se ejecute

Share this post


Link to post
Share on other sites

Hola @juandi,

Hummm en un proyecto que hice hace muchos años tenia el "problema" de que en algunos casos se usaba el Lector de Código de Barras y en otros cosos era a mano en unos inventarios. Lo que hacia era que en un TextBox usaba el Lector de Código de Barras y en Otro TextBox lo hacia a mano, ya que el largo del código no eran iguales, ya que los enumerábamos por Departamento.

Tus Códigos de Barras tienes una misma cantidad de dígitos?

Si es así debes de usar un:

Private Sub txtbarra_Change()
  IF Len(TextBarra.Text)=13 Then   ' Cuando la cantidad de digitos sea igual a 13 entonces haz la busqueda.
        Call Busca() ' Lo que quieras poner en la busqueda.
  Endif
End Sub

 

Saludos.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.



×
×
  • Create New...

Important Information

Privacy Policy