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