大家好,我看了下面这篇文章,感觉litao老师说的可以实现我想要的动能。
条码枪,扫描完成后,最后一个字符是【回车】。在文本框设置【失去焦点事件】就可以获取扫描枪扫描动作。
【失去焦点事件】处理过程,记得
1、首先检查文本框中是否有输入,有输入才继续执行,没有直接跳出处理过程。(否则可能因为第3点,焦点锁死在文本框中。)
2、获取到数据后,要清空文本框。
3、处理完成后,要把焦点还原到文本框,以实现连续扫描输入。
http://www.accessoft.com/bbs/showtopic.asp?Id=28470
想请问一下各位老师,该实现上述功能失去焦点事件的代码应该如何编写?
Private Sub Text0_LostFocus()
End Sub
'失去焦点后打开扫码枪录入文本框值对应的宏,例如文本框录入了“A-1”的文本,然后打开名字为"A-1"的宏。
'打开宏的操作后,清除文本框里的文本
'把焦点重新回到文本框,实现连续输入
点击下载此附件
建议:
新建一个表 表名:测试,字段:id 自动编号,名称 文本
基于表(测试)创建窗体,然后,在form的更新后事件中去打开对应的窗体
Private Sub Form_AfterUpdate()
on error resume next
docmd.openform me.名称
end sub
点击下载此附件
感谢楼上老师的热心答复,根据其建议再结合自身实际情况终于把代码整好了,过程是痛苦的,尤其对于我这种不是专业的新手,代码也是东拼西凑,还好结果是好的,现整理分享如下:
Private Sub Text0_AfterUpdate()
On Error GoTo Err_Text0_AfterUpdate
Dim stDocName As String
stDocName = Text0.Value
DoCmd.RunMacro stDocName
Me.Text0 = Null
Me.Text0.SetFocus
Exit_Text0_AfterUpdate:
Exit Sub
Err_Text0_AfterUpdate:
MsgBox Err.Description
Resume Exit_Text0_AfterUpdate
End Sub
点击下载此附件
感谢ACCESSOFT平台,确实学到不少!