我有一个简单的表格,我打算用来审核我工作的分拣站。它很简单,看起来像这样:
问题:我正在使用手持式扫描仪(符号LI4278)扫描某个批量中包含的每个SKU的条形码。程序很简单:
我的问题在于,在我扫描SKU条形码后,焦点不会返回文本标签(T4)以保持扫描(SKU TEXT LABEL = T4),除非我点击TAB一次。我需要这是自动的,并且setfocus属性不起作用。
这是我的代码:
Private Sub txtSKU_Change()
Application.EnableEvents = False
txtBulto.Locked = True
If Len(Me.txtSKU.Value) = 13 Then
Me.L1.ColumnCount = 3
Me.L1.AddItem Me.txtBulto.Value
Me.L1.List(L1.ListCount - 1, 1) = Me.txtSKU.Value
Me.L1.List(L1.ListCount - 1, 2) = Me.txtAuditor2.Value
End If
txtSKU.SetFocus
Application.EnableEvents = True
End Sub
我真的会在这方面给你提供帮助。我需要这个应用程序才能完美地用于操作目的并减少错误。
此致
答案 0 :(得分:1)
假设条形码扫描器在每次成功扫描时自动附加 Enter ,您只需要在KeyDown事件中捕获Enter,并用KeyCode 0替换。
尝试评论您的txtSKU_Change
Sub并在下方附加测试:
Private Sub txtSKU_Change()
Dim sValue As String
With Me.txtSKU
sValue = WorksheetFunction.Trim(.Value)
If Len(sValue) = 13 Then
With Me.L1
.AddItem Me.txtBulto.Value
.List(.ListCount - 1, 1) = sValue
.List(.ListCount - 1, 2) = Me.txtAuditor2.Value
End With
.Value = vbNullString
End If
End With
End Sub
Private Sub txtSKU_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then KeyCode = 0 ' Rejects Enter Key
End Sub
答案 1 :(得分:0)
请使用与此类似的代码:
DateCutoff Delta A_PaymentAmount A_DocumentNumber
0 2017-01-01 0 611.37 4
0 2017-01-01 1 301.37 2
0 2017-01-01 2 271.00 1
0 2017-01-02 0 301.37 2
0 2017-01-02 1 271.00 1
0 2017-01-03 0 271.00 1