以下函数实现随机生成17位数(包括字母和数字),仍有改进的空间,可根据具体要求适当修改
Dim targetstring
'调用返回函数给变量。Function过程通过函数名返回一个值
targetstring = targetrandstring("ABCDEFGHJKLMNPRSTUVWXYZ0123456789")
'msgbox "车架号="& targetstring
Function targetrandstring( constring)
' Const constring = "ABCDEFGHJKLMNPRSTUVWXYZ0123456789" '定义一个包含所有数字和字母的常量,但字母不包含IOQ
Dim i, randsting
Randomize '直接用rnid函数,每次取的值是一样的。所以要用函数 randomize 初始化随机数发生器
For i=1 To 17 'Int(Len(constring)*Rnd)+1 返回一个1到37的随机整数,包括1和37
'Mid(constring, Int(Len(constring)*Rnd)+1, 1) 在constring中从第int个字符开始取1个字符
randsting = randsting& Mid(constring, Len(constring )*Rnd+1,1)
NEXT
targetrandstring = randsting
End Function