等待数据输入,然后运行 sub



>我需要一个非常简单的系统,每次扫描时都会将条形码编号保存到工作表中。它工作得很好,但我必须在每次扫描之间单击一个cmd按钮或按回车键。文本框更改后,我可以使用执行吗?但是如果我使用 私人子txtCode_Change(( 作为标题,它只需要代码的第一个数字并使用它,而不是等待 .25 秒来估算条形码的其余部分。任何想法或帮助将不胜感激。

您可以将条形码扫描仪配置为在扫描的条形码后发送EnterTab键。

  • 如果扫描程序发送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
    

希望有帮助。

相关内容

最新更新