Public
Function
GenerateCode128B(SourceStruing
As
String
)
Dim
checkDigitValue
As
Integer
Dim
barcodeString
As
String
Dim
startSign
As
String
Dim
endSign
As
String
Dim
index
As
Integer
Dim
c
As
Integer
checkDigitValue = 104
startSign = Chr(204)
endSign = Chr(206)
index = 1
barcodeString = startSign
For
c = 1
To
Len(SourceString)
Step
1
Dim
currentSign
As
String
currentSign = Asc(Mid(SourceString, c, 1))
If
Asc(currentSign) < 32
Or
Asc(currentSign) > 126
Then
GenerateCode128B = Empty
Else
barcodeString = barcodeString & Mid(SourceString, c, 1)
checkDigitValue = checkDigitValue + (Asc(currentSign) - 32) * index
index = index + 1
End
If
Next
checkDigitValue = checkDigitValue
Mod
103
If
checkDigitValue > 94
Then
checkDigitValue = checkDigitValue + 100
Else
checkDigitValue = checkDigitValue + 32
End
If
barcodeString = barcodeString & Chr(checkDigitValue) & endSign
GenerateCode128B = barcodeString
End
Function