Excel怎么生成条形码:字体与函数方法

Excel 没有内置条形码功能,本文讲通用做法:安装条码字体,用公式拼出符合编码规则的文本,再设置字号和打印尺寸,并检查扫描效果。

Excel 表格里要做条形码,常见场景是给物料、资产或样品编号,打印后贴在标签上供扫码枪读取。很多人搜索“excel 怎么生成条形码”,结果往往是找插件或在线转换网站。这些方法可以用,但会多一步文件上传和格式转换。

OmniDoc 不提供生成条形码的功能,下面讲的是 Excel 里通用的做法:用条码字体配合单元格公式。读者读完可以在一张表里批量生成 Code 39 或 Code 128 条码,也能判断什么时候该换用专用工具。

整个流程分三部分:先确认条码类型和用途,再安装字体并用公式生成编码文本,最后设置尺寸并测试扫描。下面按这个顺序展开。

Excel 生成条形码,怎么做?一句话结论

用条码字体加辅助列公式省事:字体负责把文字画成条纹,公式负责按字体的编码规则加上起始符、结束符或校验位。数量少、只做内部编号时用这种方法;需要严格符合商品码规范时,先确认规则再决定是否用专用工具。

你的情况推荐做法原因
内部编号,数字加大写字母,数量不多Code 39 字体 + 星号公式编码规则简单,公式只需包住星号
需要更高密度,或包含小写字母、符号Code 128 字体 + 字体说明书中的编码公式字符集更大,但需要按规则拼接起始符和校验符
要印在商品包装上,需要标准商品码先按规则算出校验位,再选用对应符号体系位数和校验位错误会导致扫描失败或读错
只生成一两个,不想装字体用在线条码生成网站或浏览器工具,导出图片后插入 Excel不需要改动系统字体,但要注意数据上传与隐私
最终要交 PDF 版标签在 Excel 里排好版,再导出为 PDF条形码在 PDF 里位置稳定,便于打印

开始之前:先确认这几点

条码类型要先定。 Code 39 和 Code 128 是常见的内部用条码,商品码(如 13 位 EAN 码)有固定位数和校验规则。类型不对,扫码设备可能读不出来,或者读出错误的数字。

确认扫描设备支持的类型。 扫码枪或手机扫码软件通常支持多种类型,但设置里可能默认关闭某些类型。先用一个已知可读的条码测试,再决定用哪种。

数据要先清理。 条码内容里多余的空格、全角字符、混入的小写字母,都会导致编码错误。Code 39 不支持小写字母,可以在公式里用 UPPER 函数统一转大写。

字体只在安装它的电脑上正常显示。 把表格发给别人,对方电脑上没装同一种条码字体,条纹就会变成普通字符。发送前可以把条码区域导出为 PDF 或图片,或者让对方一起安装字体。

留足打印空间。 条形码两侧需要空白区域(一般称静区),字号太小或列宽太窄,扫描时容易失败。打印前要用真实纸张和打印机测试。

在 Excel 里用 Code 39 字体生成条码的步骤

下面以 Code 39 为例,Code 128 的思路相同,只是公式不同。

  1. 准备数据列。 在 A 列输入编号,例如 A2 填 AB2024-001,每行一个条码内容。
  2. 安装条码字体。 在系统中安装 Code 39 字体文件,安装后重启 Excel,确保字体列表里能找到它。
  3. 在 B 列写公式。 在 B2 输入 =""&UPPER(A2)&"",把内容转为大写并前后加上星号。星号是 Code 39 的起始符和结束符,字体需要它才能画出完整条码。
  4. 向下填充公式。 拖动 B2 的填充柄到需要的行数,所有条码内容就统一生成了。
  5. 设置字体。 选中 B 列,把字体改为刚安装的条码字体,字号可以先设为 36 左右,实际大小以扫描效果为准。
  6. 调整对齐和列宽。 让单元格水平居中,列宽确保条码完整显示,不要被截断或显示成井号。
  7. 检查条码内容。 在 C 列用公式或人工核对,确认 B 列显示的条纹对应的是 A 列的编号,没有空格或多余符号。
  8. 导出并测试。 打印或导出为 PDF,用扫码设备逐个扫描,确认读出的内容和 A 列一致。

Code 128 的做法是:先查字体说明书中的编码规则,用公式在辅助列拼接起始字符、数据字符和校验字符,再对这一列应用条码字体。规则错一位,扫描结果就会不一致,所以建议先用几个样例验证。

做完后逐项核对

生成完成后,不要直接批量打印,先按下面的表格检查。

检查项怎么看有问题怎么办
扫描结果用扫码设备逐个扫描,对比读出的内容与 A 列原始数据不一致时检查公式、大小写和多余空格
条纹完整性放大观察条码两端,看是否有缺口或被截断增大列宽或字号,检查字体是否完整安装
留白区域条码左右两侧是否有足够空白调整单元格对齐,或在条码两侧留出空列
打印清晰度用实际打印机和纸张打印,观察线条是否发虚提高打印质量,避免缩放导致条纹变细
字体兼容性在另一台电脑打开文件,看条码是否正常显示导出为 PDF 或图片再发送

如果扫描失败,优先排查三个原因:数据格式不对、字体或字号不合适、打印留白不够。逐一排除,比反复重打更快。

📊 核心对比

做法适合场景优点注意事项
条码字体 + 公式批量生成内部编号数据直接来自单元格,修改后可自动更新需要安装字体,编码规则要正确
在线条码生成网站 + 插入图片少量生成,不想装字体操作简单,无需记规则逐个生成效率低,需注意数据隐私
桌面办公软件的加载项经常生成,需要多种类型支持的条码类型较多需要额外安装,兼容性取决于具体版本

❓ 常见问题(FAQ)

1. Excel 生成的条形码能直接用扫码枪读取吗?

可以,前提是条码类型与扫码设备设置一致,字号和打印清晰度足够。正式使用前,建议用几个样例实际扫描一遍。

2. 商品码要不要自己算校验位?

要。13 位商品码的最后一位是校验位,可以在公式里计算。假设 A2 中是 12 位数字,可以在 B2 写 =MOD(10-MOD(SUMPRODUCT(--MID(A2,{1,3,5,7,9,11},1))+3*SUMPRODUCT(--MID(A2,{2,4,6,8,10,12},1)),10),10),结果即为校验位。商品码的正式使用还要核对所在行业的编码规范。

3. 条码内容里有小写字母,怎么办?

Code 39 只支持大写字母、数字和部分符号,公式里加上 UPPER 函数即可统一转换。如果必须保留小写字母,就要改用支持更大字符集的 Code 128。

4. 生成的条码在 Excel 里显示正常,打印出来却扫不出来,为什么?

常见原因有字号太小、缩放导致线条变细、两侧留白不足,或者打印机分辨率太低。建议关闭缩放,用原始尺寸打印,并在条码两侧留出空白。

5. 有没有不装字体也能做的办法?

有。可以用在线条码生成网站或浏览器工具逐个生成图片,再插入 Excel。这种方式适合少量需求,批量数据不建议上传到不明网站,涉及内部编号时要注意隐私。

📝 总结

Excel 本身不直接生成条形码,但通过条码字体加公式,可以批量完成 Code 39 或 Code 128 的制作。关键是先确定条码类型,再用公式拼出正确的编码文本,最后用扫码设备和实际打印结果做核对。

打开 OmniDoc,处理你的表格文件

更新于 2026-11-04