Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

回复 加入收藏帖  复制
我要提问 帖子上移

使用扫码枪扫描条形码打开指定窗体

 等级: 普通会员 积分:0 金币:0 来自:汕头Access交流中心 发表于:2020-08-12 15:28:32   已结帖
楼主

各位老师,我想实现的功能是用扫码枪扫描纸上的条形码(条形码是事先编好的,打印在纸上,以各个窗体的名字用条形码字体生成的),扫描后能打开该条形码指定的那个窗体。例如一个样品品名是ABC-123,我用此品名生成好的条形码打印在纸上,我要打开以“ABC-123”命名的窗体时只要扫描一下条形码就行了, 请问这个功能可以实现吗?应该如何实现?

我看过BarCodeControl控件,但这是生成条形码的工具,似乎无法实现我的上述功能,请问各位老师,对于新手的我应该从何入手?

 

access培训  诚聘access开发人员

    嗨
      获得社区协助:请教问题(即发帖)2篇,其中获得解决的2篇;
      协助社区成员:协助他人(即回帖)0篇,其中被设为【最佳答案】的0篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
Top

扫描下方工作人员的微信二维码加微信,邀您加入Access课堂微信群,进入一个技术交际圈:

网站工作人员微信

 等级:普通会员 积分:0 金币:0 来自:汕头Access交流中心 发表于2020/8/13 13:24:10 
1楼 得分: 0

大家好,我看了下面这篇文章,感觉litao老师说的可以实现我想要的动能。

条码枪,扫描完成后,最后一个字符是【回车】。在文本框设置【失去焦点事件】就可以获取扫描枪扫描动作。

【失去焦点事件】处理过程,记得
1、首先检查文本框中是否有输入,有输入才继续执行,没有直接跳出处理过程。(否则可能因为第3点,焦点锁死在文本框中。)       

2、获取到数据后,要清空文本框。

3、处理完成后,要把焦点还原到文本框,以实现连续扫描输入。 

http://www.accessoft.com/bbs/showtopic.asp?Id=28470


想请问一下各位老师,该实现上述功能失去焦点事件的代码应该如何编写?

Private Sub Text0_LostFocus()


End Sub

'失去焦点后打开扫码枪录入文本框值对应的宏,例如文本框录入了“A-1”的文本,然后打开名字为"A-1"的宏。
'打开宏的操作后,清除文本框里的文本
'把焦点重新回到文本框,实现连续输入
点击下载此附件





    嗨
      获得社区协助:请教问题(即发帖)2篇,其中获得解决的2篇;
      协助社区成员:协助他人(即回帖)0篇,其中被设为【最佳答案】的0篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
西出阳关无故人 等级:版主★★★★★ 积分:659 金币:120 来自:安顺Access交流中心 发表于2020/8/17 12:50:38 最佳答案
2楼 得分: 2

建议:

新建一个表  表名:测试,字段:id 自动编号,名称 文本

基于表(测试)创建窗体,然后,在form的更新后事件中去打开对应的窗体

Private Sub Form_AfterUpdate()

on error resume next

docmd.openform me.名称

end sub

点击下载此附件



    很高兴与您就本帖子进行交流,如果我的回答已经解决了您的问题,请点击上方的“最佳答案”,这样本帖子就不会在“待解决问题区”显示了,我也将获得2个积分奖励,并不会减少您的积分!
    西出阳关无故人
      获得社区协助:请教问题(即发帖)18篇,其中获得解决的9篇;
      协助社区成员:协助他人(即回帖)893篇,其中被设为【最佳答案】的244篇;
      协助我们社区:发布技术文章3篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
 等级:普通会员 积分:0 金币:0 来自:汕头Access交流中心 发表于2020/8/23 11:24:08 
3楼 得分: 0

感谢楼上老师的热心答复,根据其建议再结合自身实际情况终于把代码整好了,过程是痛苦的,尤其对于我这种不是专业的新手,代码也是东拼西凑,还好结果是好的,现整理分享如下:

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平台,确实学到不少!



    嗨
      获得社区协助:请教问题(即发帖)2篇,其中获得解决的2篇;
      协助社区成员:协助他人(即回帖)0篇,其中被设为【最佳答案】的0篇;
      协助我们社区:发布技术文章0篇,邀请了0名新会员注册本社区(如何邀请会员注册,详见:http://www.accessoft.com/sitehelp.asp)。
总记录:3篇  页次:1/1 9 1 :
您还没有在Access软件网登录不能回复帖子
  • 你没有登录,请点击后面链接登录:登录
  • 如果你没有注册,请点击后面链接注册:注册,注册完成后,请再次访问本页功能。