关于do......loop语句的疑问

来源:百度知道 编辑:UC知道 时间:2024/05/12 14:54:52
我今天学习了do....loop语句,在做一个实验的时候出现了问题。发现在运行的时候,它不能识别for语句中的变量,代码如下:
Private Sub Command1_Click()
Dim a(5) As String
a(0) = "吴华"
a(1) = "杨忠"
a(2) = "范宽"
a(3) = "朱光"
a(4) = "王艳"
a(5) = "张龙"
For i = 0 To 5
Do While Text1.Text = a(i)

MsgBox "你的输入正确!"
Exit For
Exit Do
Loop
Do Until Text1.Text = a(i)
MsgBox "你的输入不正确!"
Exit For
Exit Do
Loop
Next i
End Sub

如果将Do While Text1.Text = a(i)中的(i)改成0-5中的任何一个数字,那么它就能够正常运行,我想问一下各位朋友,是不是do循环不支持for 变量啊?
一楼的方法我已经试过了,没有任何作用还会导致弹出6次对话框

do...loop也是一种条件循环
但是分析一下你的代码:
Do While Text1.Text = a(i)

MsgBox "你的输入正确!"
Exit For
Exit Do
Loop

i是for里面的循环变量,text1.text是一个固定的对象的值,这段用do...loop没有实际意义.你用一个if代替试试

For i = 0 To 5
Do While Text1.Text = a(i)

MsgBox "你的输入正确!"
Exit For
Exit Do
Loop
你将exit for与exit do 互相换个位置再试试

路过...