select case中为什么不能进行数值比较(>使用不 来 )

zjx1001 2009-08-25 09:18:16
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 >的比较为什么会报错。
...全文
265 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
zjx1001 2009-08-25
  • 打赏
  • 举报
回复
3q,了解了,我目前是看vbs教程学的,不知道还有没别的不错的vbs的书推荐
zjx1001 2009-08-25
  • 打赏
  • 举报
回复
3q,了解了,我目前是看vbs教程学的,不知道还有没别的不错的vbs的书推荐
hookee 2009-08-25
  • 打赏
  • 举报
回复
n = inputbox("请输入数值:","名称")
If IsNumeric(n) Then
n = CInt(n)
.....
Else
MsgBox "空"
End If
zjx1001 2009-08-25
  • 打赏
  • 举报
回复
呵呵,看到您的答案了,再次感谢。
输入空值,提示类型不匹配,是否还需要加别的判断,才能避免
zjx1001 2009-08-25
  • 打赏
  • 举报
回复
非常感谢hookee大哥,vbs教程的书上写的太浅显了,随便输点东西,就遇到问题了。
看了你的答案,我思路清晰了很多。
再问下,vbs中有case is的用法的吗
hookee 2009-08-25
  • 打赏
  • 举报
回复
vbscript和vb6的语法有不同 不支持case is
hookee 2009-08-25
  • 打赏
  • 举报
回复
还有就是和比较TRUE,这和If就类似了

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
hookee 2009-08-25
  • 打赏
  • 举报
回复
要么就列举出来

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
zjx1001 2009-08-25
  • 打赏
  • 举报
回复
谢谢2位的回复,用if比较我知道是可以的,就是想问下,为什么select比较,会报错,我查询过,好象有说可以用case is进行比较的,我哪弄错了吗?
还有1楼的,请问下,转换具体是怎么实施的?
hookee 2009-08-25
  • 打赏
  • 举报
回复
范围比较用If

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
tidelgl 2009-08-25
  • 打赏
  • 举报
回复
n必须是整数,所以要转换成整形

4,007

社区成员

发帖
与我相关
我的任务
社区描述
它是一种微软环境下的轻量级的解释型语言,它使用COM组件、WMI、WSH、ADSI访问系统中的元素,对系统进行管理。
社区管理员
  • vbScript社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧