Tengo problemas con el setfocus de un textbox (vb-excel)
Estoy tratando de hacer un pequeño trabajo para poder realizar ventas en un kiosko.
Por ahora el código que tengo escrito funciona de 10 usando un commandbutton..
CÓDIGO:
Private Sub CommandButton1_Click()
ListBox1.ListIndex = 0
Sheets("tick01").Activate
On Error Resume Next
conta = 0
For x = 0 To Me.ListBox1.ListCount - 1
If Me.ListBox1.Selected(x) = True Then
conta = conta + 1
End If
Next x
If conta = 0 Then
Exit Sub
End If
Set a = Sheets("tick01")
filaedit = a.Range("B" & Rows.Count).End(xlUp).Row + 1
fila = Me.ListBox1.ListIndex
a.Cells(filaedit, "b") = ListBox1.List(fila, 0)
a.Cells(filaedit, "c") = ListBox1.List(fila, 1)
ListBox2.RowSource = ""
ListBox2.RowSource = ("B6:C27" & Cells(Rows.Count, 1).End(xlUp).Row)
TextBox1.Text = Empty
End Sub
Cargo el código de barras de algún articulo en un TextBox (TExtBox1) y presiono el commandbutton con el código y todo va de 10 cero problemas, carga el articulo y puedo ir agregando de uno en uno pero siempre presionando el botón de comando..
Bien es un poco incomodo tener que hacer ese proceso cada que quiero sumar otro articulo a la venta escaneando otro código de barras, por ello decidí obviar el botón de comando y modifique el código para que al salir del TextBox1 corra el código anterior..
NUEVO CODIGO:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
ListBox1.ListIndex = 0
Sheets("tick01").Activate
On Error Resume Next
conta = 0
For x = 0 To Me.ListBox1.ListCount - 1
If Me.ListBox1.Selected(x) = True Then
conta = conta + 1
End If
Next x
If conta = 0 Then
Exit Sub
End If
Set a = Sheets("tick01")
filaedit = a.Range("B" & Rows.Count).End(xlUp).Row + 1
fila = Me.ListBox1.ListIndex
a.Cells(filaedit, "b") = ListBox1.List(fila, 0)
a.Cells(filaedit, "c") = ListBox1.List(fila, 1)
ListBox2.RowSource = ""
ListBox2.RowSource = ("B6:C27" & Cells(Rows.Count, 1).End(xlUp).Row)
TextBox1.Text = Empty
TextBox1.setfocus
End Sub
El problema aqui es que no puedo mantener el setfocus en el textbox1..
Necesito que alguien corrija esto para que se pueda cargar el código de barras y al final cuando el escáner termine de mandar los números+enter el cursor se mantenga en el textbox1 a la espera de otro código de barras
Por las dudas adjunto el archivo en el que estoy trabajando.