首先,你出现这个错误的原因是你的枚举常量里面已经定义了i,下面的for循环里就不能将i作为循环变量了.然后Mid(jhm, i, 0)应改为Mid(jhm, i, 1),每次取一个字符
再者,枚举常量没有转换的功能,它只起到别名的作用,实际值是不变的
因此程序应改为
Private Sub Command1_Click()
jhm = Text1.Text
Dim zjhm As String
Dim shuzi As String
For ii = 1 To 15
shuzi = CStr(Asc(Mid(jhm, ii, 1)) - Asc("A")) '顺次读取输入的15个大写字母,并转成数值
zjhm = zjhm & shuzi '把这些数值排列连起来,实现字母转数字
Next ii
Text1.Text = zjhm
Print zjhm
End Su