Excel 条码扫描宏

Posted

技术标签:

【中文标题】Excel 条码扫描宏【英文标题】:Excel Barcode Scanning Macro 【发布时间】:2014-11-24 16:01:09 【问题描述】:

我处理大量独特的产品(我自己每年 10,000 多个),我希望优化 Excel 以提高我的工作效率。我有一个 USB 条码扫描仪,想在我的流程中实现它。

我的供应商向我发送了一个包含产品信息的大型电子表格,例如条形码编号和其他产品详细信息。我还收到了产品的样品,需要在系统中注册它们,并与电子表格交叉引用它们。

我正在寻找一个宏:当它接收到来自扫描仪的输入时,在电子表格中搜索并导航到产品所在的行,如果相同的条形码在 3-5 秒内进行第二次扫描,则填充在 x 列的日期中,如果 x 列是占用单元格,则在 y 列中填写日期。

这将允许我在不填写日期(不是重复扫描)的情况下搜索产品以进行一般查找,还可以使用日期签入和签出产品。

非常感谢您的帮助!

【问题讨论】:

宏的问题是你必须以某种方式激活它,这是一个额外的步骤。你打算连续扫描大量这些吗? @theMayer 这似乎是最大的问题。连续会有 50 多个,因此在第一次扫描时激活它就可以了,但对于每一次扫描都是一个问题。 我处理了一个 Excel 文件来捕获条形码扫描。我的用例每盒大约有 100 种不同的产品,其中一些有多种数量。我发现只扫描到一列然后处理数据是最简单的方法。这样做的问题是不熟练的用户可能会把它搞砸。 Excel 真的不是最适合这项工作的工具。 【参考方案1】:

如果有帮助,可以忽略这个问题与条形码扫描有关的事实 - 条形码扫描仪只是作为键盘设备实现的,可以“键入”扫描的数字(有些在末尾附加“输入”,有些则没有,有些是可配置的)。

因此,您的问题的答案不必以任何方式特定于条形码扫描。它几乎只需要一个 InputBox 接受一个数字,然后在 MATCH 函数中使用该数字。

例如

code = InputBox("Please scan a barcode and hit enter if you need to")
matchedCell = match(code, productRange, 0)
matchedCell.Offset(0,2) = Now

其中productRange 是您的产品列表占用的单元格范围。

编辑:

首先,请按照以下教程进行操作:http://www.excel-easy.com/vba/create-a-macro.html

您的表单上应该会出现一个按钮,单击该按钮后,单元格 A1 中会出现“hello”一词。

完成此操作后,将“hello”代码替换为我上面建议的行,您应该一切顺利。

【讨论】:

太棒了,谢谢保罗。我将如何在我的电子表格中实现这一点? @HiFi 听起来您正在找人为您编写宏。有很多招聘开发人员的网站,这不是其中之一。 @Enrico 可能看起来像这样,但我正在努力学习如何自己做!

以上是关于Excel 条码扫描宏的主要内容,如果未能解决你的问题,请参考以下文章

具有宏阵列的sas扫描功能

微软开始为Microsoft Office 365提供恶意宏扫描和检测

如何将扫描的PDF文件转换成Excel格式文档

EXCEL中如何在A1单元格输入数据, B2单元格以Code128条码显示A1的数据

如何做一个公式,使excel能用code128a字体生成可识别的条码

Python:在python编程中将扫描的pdf转换为excel