当前位置: 代码迷 >> vbScript >> select case中为什么不能进行数值比较(>使用不 来 ),该如何处理
  详细解决方案

select case中为什么不能进行数值比较(>使用不 来 ),该如何处理

热度:1712   发布时间:2013-02-26 00:00:00.0
select case中为什么不能进行数值比较(>使用不 来 )
select case中为什么不能进行数值比较(>使用不 来 )
通过case is>19也 执行不来 ,to也 是错误的 。
dim n 
n=inputbox("请输入数值:","名称")
 Select Case n
  Case 1 To 5
  MsgBox "Hello World!" 
  Case 7 
  MsgBox "Hello Software Testing!" 
  Case Else 
  MsgBox "Hello 51Testing!" 
  End Select 
这段代码,1到 5之间的 数,不会执行对应语句,请 问哪出错了。
还有case >的比较为什么会报错。

------解决方案--------------------------------------------------------
n必须是整数,所以要转换成整形

------解决方案--------------------------------------------------------
范围比较用If
VBScript code
n=inputbox("请输入数值:","名称") If n>=1 And n<=5 Then     MsgBox "Hello World!" ElseIf n=7 Then    MsgBox "Hello Software Testing!" Else     MsgBox "Hello 51Testing!" End If
------解决方案--------------------------------------------------------
要么就列举出来
VBScript code
n=CINt(inputbox("请输入数值:","名称")) Select Case n  Case 1,2,3,4,5    MsgBox "Hello World!"   Case 7     MsgBox "Hello Software Testing!"   Case Else     MsgBox "Hello 51Testing!" End Select
------解决方案--------------------------------------------------------
还有就是和比较TRUE,这和If就类似了
VBScript code
n=CInt(inputbox("请输入数值:","名称")) Select Case TRUE  Case n>=1 And n<=5    MsgBox "Hello World!"   Case n=7     MsgBox "Hello Software Testing!"   Case Else     MsgBox "Hello 51Testing!" End Select
------解决方案--------------------------------------------------------
vbscript和vb6的语法有不同 不支持case is
------解决方案--------------------------------------------------------
VBScript code
n = inputbox("请输入数值:","名称")If IsNumeric(n) Then    n = CInt(n)    .....Else    MsgBox "空"End If
  相关解决方案