VB select case语句问题!

Option Explicit
Dim i As Integer, a as string

Private Sub Command1_Click()
i = 0
Randomize
i = Int(10 * Rnd)

Select Case i
Case i = 0
a = "a"
Case i = 1
a = "b"
Case i = 2
a = "c"
Case i = 3
a = "d"
Case i = 4
a = "e"
Case i = 5
a = "f"
Case i = 6
a = "g"
Case i = 7
a = "h"
Case i = 8
a = "i"
Case i = 9
a = "j"
End Select

Text1.Text = a

为什么无论试多少次,text1中没有东西输出呢?

第1个回答  2010-01-23
改成这样就可以了
Option Explicit
Dim i As Integer, a As String

Private Sub Command1_Click()
i = 0
Randomize
i = Int(Rnd * 10)

Select Case i
Case 0
a = "a"
Case 1
a = "b"
Case 2
a = "c"
Case 3
a = "d"
Case 4
a = "e"
Case 5
a = "f"
Case 6
a = "g"
Case 7
a = "h"
Case 8
a = "i"
Case 9
a = "j"
End Select

Text1.Text = a
End Sub
第2个回答  2010-01-23
直接改成

Private Sub Command1_Click()
Randomize
Text1.Text = Chr(97 + Int(10 * Rnd))
End Sub

出错的原因是 你case后写错了

Case 0
a = "a"
Case 1
a = "b"

这样才对本回答被提问者采纳
第3个回答  2010-01-23
Select Case i
Case 0
a = "a"
...
End Select

Select Case i
Case Is = 0
a = "a"
...
End Select

vb中“select case”是什么意思?
根据表达式的值执行几组语句之一\\x0d\\x0aselect case a 意思就是判断a是什么内容。然后根据不同内容执行不同的代码。  \\x0d\\x0a VB里的Select语句的格式是这样的: \\x0d\\x0aSelect Case  '语句开始 \\x0d\\x0aCase ’判断条件\\x0d\\x0a?? ‘执行命令\\x0d\\x0aCase \\x0d\\...

VB的select case 语句问题。
Private sub From1_click()Dim y as single,x as single x=val(inputbox("请输入价钱"))Select Case x Case x >= 1000 And x < 2000 y = x * 0.9 Case x >= 2000 And x < 3000 y = x * 0.8 Case Is >= 3000 y = x * 0.7 End Select Print"所要付的钱为:"&y E...

vb的select语句问题、
一是Select Case语句语法错误,二是变量a的赋值来自Text1,而不是Text1的内容从变量a获得!(a的值只能恒为0了)Private Sub Command1_Click()Dim a As Integer Dim b As Integer a = Text1.Text '变量a的值从Text1获取 Select Case a Case 1000 Print "b = 10000"Case 2000 Print "b...

VB select case语句中遇到了问题,求教
第一,就是错误。17000 < L < 22999 不是vb的条件表达式。可以按照其他人的建议写,但对你目前的理解还是有点问题;我建议写成17000 to 23000。第二,是一种思路失误,不构成错误,但这样不是好习惯。就是HO = (L \/ 20) \/ 2 样式的语句反复出现。应该合并。综上,你的代码写成:Dim L As ...

vb中SELECT CASE语法问题
Case 2: C = A - B D = "-"Case 3: C = A * B D = "*"Case 4: C = A \/ B D = "\/"Case 5, 6: C = A ^ B D = "^"Case Else: End End Select Print A; D; B; "="; C End Sub --- 书本难免有疏漏之处,尽信书不如无书~_~

问一个VB里select case语句的很基础问题。。(内详)
case后面的IS只能执行一个范围,如IS>0,IS<60那么只会执行IS>0这个,所以你的代码就有问题了,效果不是你想要的,可以用To表示范围的,你改写成如下的代码就OK了。Private Sub Command1_Click()Dim A As Single A = Val(Text1.Text)Select Case A Case 0 To 60 MsgBox ("不及格")Case 60...

VB的select case 的小问题
Sub 看case is>0 这一条 2)Private Sub Form_Load()Me.Show x = InputBox("输入一个整数")Select Case x Case Is > 0 Print x; Spc(x); "Sqr(x)=" & Sqr(x)Case Is = 0 Print x; 1.25 Case Is < 0 Print x; x * x End Select End Sub ---Spc(x); 可自己定义 ...

vb中如何使用selectcase语句
vb Select Case 变量 Case 值1 '当变量等于值1时执行的代码 Case 值2 '当变量等于值2时执行的代码 '可以添加多个Case语句 Case Else '当变量不符合前面的任何值时执行的代码 End Select 详细解释:1. 定义Select Case语句:首先,你需要使用`Select Case`关键字开始一个选择结构,并指定要评估的...

VB的select case 语句问题。急啊!在线等!!
是啊.用数组的办法.dim old(100)for i =0 to 99 old(i)=0 next do while 表达式 old(i)=old(i)+1 loop 多简单明了.不过select case并不限分支多少.你的错误可能在于old_*没有初始化为0.另外,你试一下,select case 如果case一种情况后,没有及时跳转,它还继续往下执行.那就差远了.

vb select case 的问题
这种格式是错误的,Case 后面只能是数值,不能是判别式 可以用IF IF 100 < Text1.Text THEN MsgBox "大了"ELSEIF100 > Text1.Text THEN MsgBox "小了"Else MsgBox "恭喜你 答对了"ENDIF

相似回答