VB改变字母和数字值

来源:百度知道 编辑:UC知道 时间:2024/05/07 00:25:12
在VB中假设我有一组数据A52DWEEC
其中A=7 D=9 W=91 E=41 C=5 也就是说字母是可以给我任意赋值的
然后计算A52DWEEC 则就等于A+5+2+D+W+E+E+C 等于7+5+2+91+41+41+5的值 如何实现这个命令????
答的好愿意加分

Private Sub Form_Load()
MsgBox calc("A52DWEEC")
End Sub

Function calc#(s$)
For i& = 1 To Len(s)
t$ = Mid$(s, i, 1)
calc = calc + IIf(IsNumeric(t), t, Switch(t = "A", 7, t = "D", 9, t = "W", 91, t = "E", 41, t = "C", 5))
Next
End Function
=======================
Switch后面的部分可以自由扩充,语法如下:

Switch 函数

计算一组表达式列表的值,然后返回与表达式列表中最先为 True 的表达式所相关的 Variant 数值或表达式。

语法

Switch(expr-1, value-1[, expr-2, value-2 _ [, expr-n,value-n]])

Switch 函数的语法具有以下几个部分:

部分 描述
expr 必要参数。要加以计算的 Variant 表达式。
value 必要参数。如果相关的表达式为 True,则返回此部分的数值或表达式。

说明

Switch 函数的参数列表由多对表达式和数值组成。表达式是由左至右加以计算的,而数值则会在第一个相关的表达式为 True 时返回。如果其中有部分不成对,则会产生一个运行时错误。如果 expr-1 为 True 则 Switch 返回 value-1,如果 expr-1 为 False,但 expr-2 为 True,则 Switch 返回 value-2,以此类推。

Switch 会返回一个 Null值,如果:

没有