你是否还在手动为每个产品逐个生成条形码?面对成百上千条数据,是否渴望找到一种全自动化的解决方案?今天,我将分享一段“神奇代码”,只需点击一次,就能将Excel表格中的数据批量转换为高清条形码图片!无需复杂操作,全程自动化,彻底解放双手!
核心代码:Excel与BarTender的梦幻联动
Bash
Sub CodetoImage()
Dim i As Long, FilePath As String
Dim btApp As BarTender.Application, btFormat As BarTender.Format
Dim ws As Worksheet, rng As Range, myArray() As Variant
Dim rows As Long, baseFolder As String
Set ws = ThisWorkbook.Sheets(1)
rows = ws.Cells(ws.Rows.Count, "A").End(xlUp).Row - 1
Set rng = ws.Range("A2:B" & rows + 1)
myArray = rng.Value
Set btApp = CreateObject("BarTender.Application")
baseFolder = ThisWorkbook.Path & "\"
If Dir(baseFolder & "CW\", vbDirectory) = "" Then MkDir baseFolder & "CW\"
Set btFormat = btApp.Formats.Open(baseFolder & "储位.btw", False, "")
btFormat.PrintSetup.NumberSerializedLabels = rows
For i = 1 To rows
btFormat.SetNamedSubStringValue "TextVar", myArray(i, 1)
btFormat.SetNamedSubStringValue "QRCodeVar", myArray(i, 2)
FilePath = baseFolder & "CW\" & myArray(i, 1) & ".png"
btFormat.ExportToFile FilePath, "png", , , BarTender.BtSaveOptions.btSaveChanges
Next i
btFormat.Close False
btApp.Quit
Set btFormat = Nothing
Set btApp = Nothing
End Sub
为什么这段代码能引爆效率?
- 数据秒级读取
代码直接从Excel的A、B两列抓取数据,自动识别最后一行动态范围。无论数据量是10条还是1000条,无需手动调整,一键运行即可精准读取。 - 文件夹智能管理
生成的图片会统一保存到“CW”子文件夹中。如果目标文件夹不存在,代码会自动创建,避免因路径错误导致程序中断。 - BarTender深度调用
通过VBA操控BarTender,直接调用模板文件(.btw),动态替换模板中的变量(如TextVar和QRCodeVar),实现“数据驱动设计”。每行数据生成一张独立图片,分辨率支持打印机级别,清晰度完美适配打印需求。 - 命名自动化
生成的图片以A列内容命名(如“A2单元格内容.png”),文件与数据一一对应,查找时一目了然。
三步上手,小白也能轻松玩转!
- 环境配置
- 安装BarTender软件(版本需支持API调用)。
- 准备一个Excel文件,A列为文本内容(如储位编号),B列为二维码内容。
- 在BarTender中设计好模板“储位.btw”,并定义两个具名变量:TextVar(文本)和QRCodeVar(二维码)。
- 代码部署
- 将代码复制到Excel的VBA编辑器(按Alt+F11打开)。
- 修改模板文件路径(若名称不同),确保与代码中的储位.btw一致。
- 一键运行
- 回到Excel界面,按Alt+F8选择CodetoImage宏,点击运行。
- 静待几秒,所有条形码图片将自动存入“CW”文件夹!
场景扩展:不止于条形码!
这套方法不仅适用于储位标签,还可灵活拓展至:
- 商品标签:批量生成带价格和二维码的商品标签。
- 资产管理:为设备生成唯一标识码,扫码即可查看详细信息。
- 会议物料:快速制作参会证、桌签等带二维码的印刷品。
避开这些坑,成功率100%!
- BarTender权限问题:确保以管理员身份运行Excel,避免BarTender调用被拦截。
- 模板变量名一致:代码中的TextVar和QRCodeVar必须与BarTender模板中的变量名完全匹配。
- 图片格式选择:若需透明背景,可修改代码中的导出格式为PNG+透明通道参数。
立即行动!
别再让重复劳动消耗你的时间!复制这段代码,5分钟内搭建你的自动化流水线。从此,数据到条形码的转化,只需一次点击,轻松实现“光速办公”!