>我需要一个非常简单的系统,每次扫描时都会将条形码编号保存到工作表中。它工作得很好,但我必须在每次扫描之间单击一个cmd按钮或按回车键。文本框更改后,我可以使用执行吗?但是如果我使用 私人子txtCode_Change(( 作为标题,它只需要代码的第一个数字并使用它,而不是等待 .25 秒来估算条形码的其余部分。任何想法或帮助将不胜感激。
您可以将条形码扫描仪配置为在扫描的条形码后发送Enter或Tab键。
-
如果扫描程序发送Tab键,则可以使用
TextBox_AfterUpdate
事件:Private Sub txtCode_AfterUpdate() 'Do something. End Sub
-
如果扫描程序发送Enter键,则可以使用
TextBox_KeyDown
事件:Private Sub txtCode_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, _ ByVal Shift As Integer) If KeyCode = vbKeyReturn Then 'Do something. End If End Sub
-
如果条形码是固定长度的字符串,您仍然可以使用
TextBox_Change
事件,如下所示:Private Const BARCODE_LENGTH As Integer = 12 Private Sub txtCode_Change() If Len(txtCode.Text) = BARCODE_LENGTH Then 'Do something End If End Sub
希望有帮助。