原来Excel可以批量生成条形图,太好用了

很多网友私信留言想要该文件,但是鉴于该文件是含有VBA代码的宏文件,因此无法分享,这里我把相应的代码贴出来,大家可以粘贴使用,文中我会对代码进行详细的讲解,方便大家进行学习和修改使用。
一、在“批量生成条形码”的按钮下的代码如下:
Private Sub CommandButton1_Click()
Dim I As Integer
For I = 2 To 100
If Cells(I, “A”) <> “” Then
With ActiveSheet.OLEObjects.Add(ClassType:=”BARCODE.BarCodeCtrl.1″) ‘添加条码控件
.Name = I’条码命名
.Object.Style = 7’“7”代表条码样式为“code 128”
.Left = Cells(I, “B”).Left + 4’条码左侧距离单元格左侧为4磅
.Top = Cells(I, “B”).Top + 4’条码上侧距离单元格上侧为4磅
.Height = 30’条码高度为30磅
.Width = 150’条码宽度为150磅
.Object.Value = Cells(I, “A”)’对条码赋值
End With
Else
I = 100
End If
Next I
MsgBox “条形码生成完毕!”
End Sub
二、在“批量删除条形码”的按钮下的代码如下:
Private Sub CommandButton2_Click()
Dim I As Integer
Dim 条形码 As Shape’定义条码作为图形控件
For I = 2 To 100
If Cells(I, “A”) <> “” Then
With Sheet2
For Each 条形码 In .Shapes
If 条形码.Name = BarCodeCtrl & I Then 条形码.Delete
Next 条形码
End With
Else
I = 100
End If
Next I
MsgBox “条形码删除完毕!”
End Sub
三、代码解读
1、“批量生成条形码”按钮

如上图,通过 “生成” 按钮,自动遍历 Excel 第 2 至 100 行,若 A 列存在内容(如编码、数字),则在对应 B 列生成标准 Code128 格式的条形码,条码大小(宽 150 磅、高 30 磅)和位置固定对齐,生成完成后弹出提示。
2、“批量删除条形码”按钮

如上图,通过 “删除” 按钮,同步遍历第 2 至 100 行,精准识别并删除之前生成的对应条形码,清空后弹出提示。
四、总结
这套 Excel VBA 代码堪称条码管理 “效率神器”!不管是仓库整理物料编码、电商统计商品条码,还是行政归档各类编号,都能帮你省去逐个制作、删除条码的繁琐操作 ——A 列填好编码,一键生成标准 Code128 条码,位置整齐、格式规范;后续需要更新或清空时,一键就能批量删除,全程无需手动干预。
使用时记得保存为.xlsm 或.xls 格式,确保Excel 已安装条码控件,2-100 行的适配范围也能根据数据量灵活调整。如果需要切换条码格式(如 EAN-13、Code39)、调整条码大小,或是想让生成的条码自动居中对齐,都可以随时留言,轻松优化升级~ 觉得实用的话,不妨分享给需要批量处理条码的同事,一起提升工作效率呀!
本文首发于今日头条,授权本公众号发布。
夜雨聆风