目录

Excel-生成Code128条码

目录

Excel 生成Code128条码

新建一个Excel然后另存为启用宏的Excel工作簿(后缀为.xlsm),如果保存时候提示 “文档检查器”警告,需要在Excel选项的 信任中心 设置,去掉 “文档特性设置”里面的勾。

Excel -》开发工具-》Visual Basic  增加以下代码:

Function code128b(Tar As Range)   ‘128B码:ChrW(204).

Dim s$, i%, ss$, j%, curR%, checkB%

curR = Tar.Row

s = Tar.Value

checkB = 1  ‘开始位的码值为104 mod 103 =1

For i = 1 To Len(s)

ss = Mid(s, i, 1)

j = Asc(ss) ‘不过滤无效字符,比如汉字.

If j < 135 Then

j = j - 32

ElseIf j > 134 Then

j = j - 100

End If

checkB = (checkB + i * j) Mod 103   ‘计算校验位

Next

If checkB < 95 And checkB > 0 Then  ‘有的资料直接求103的模,解说不充分,因为有的校验位超过127时,系统会"吃"掉它们(连带休止符).

checkB = checkB + 32

ElseIf checkB > 94 Then ‘字体设置时,字模被定义了2个值.观察字体文件时能发现.

checkB = checkB + 100

End If

code128b = ChrW(204) & s & IIf(checkB, ChrW(checkB), Chr(32)) & ChrW(206)

End Function