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






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章