等待数据input然后运行子。
我需要一个非常简单的系统,每次扫描时都会将条形码编号保存到工作表中。 它工作得很好,但我必须在每次扫描之间点击一个cmdbutton或按回车。 是否有任何我可以使用文本框更改后执行? 但是,如果我使用Private Sub txtCode_Change()作为标题,那么它只需要第一个数字的代码,并使用它,而不是等待.25秒的其余条形码被计算。 任何想法或帮助将不胜感激。
您可能可以configuration您的条形码扫描器在扫描的条形码之后发送Enter或Tab键。
-
如果您的扫描仪发送一个Tab键,您可以使用
TextBox_AfterUpdate
事件:Private Sub txtCode_AfterUpdate() 'Do something. End Sub
-
如果您的扫描仪发送一个回车键,您可以使用
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
-
如果您的条码是一个固定长度的string,您仍然可以使用
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
希望有所帮助。