vbs中使用select case条件语句,case中匹配项多于一个时,提示:type mismathc/ 800A000D

Note:本人刚刚开始学习vbs,小白一个,所写随笔,仅为记录学习中的磕磕绊绊,同时也希望能给遇到相同问题的伙伴一点帮助。

Code1:(错误的)

Dim myName
myName = "Charles"
Select Case myName
Case "Bob" , 1
msgbox("A")
Case "Sara", 2
msgbox("B")
Case "Charles" ,3
msgbox("C")
End Select

以上vbs代码在运行时有如下提示:

 

 

此问题“折磨”了我小一天。使用VarType查看过数据类型,添加各种提示信息作为断点!!午饭后,有可能是补充了能量的原因,突然、貌似知道了问题的所在:就在case中匹配项中的1、2、3数字上。这几个数字在此处为整数型,而待匹配项myName是字符串。酱紫,myName在于case中各匹配项匹配时,当非字符串类型数据匹配时,就出弹出上面的提示。

解决方案:应该将case中出现的数字用双引号扩起来。

Dim myName
myName = "Charles"
Select Case myName
Case "Bob" , "1"
msgbox("A")
Case "Sara" , "2"
msgbox("B")
Case "Charles" , "3"
msgbox("C")
End Select

posted @ 2014-04-25 13:46  huihui1989  阅读(936)  评论(0编辑  收藏  举报