您现在所在的是:

电脑编程

回帖:2个,阅读:2394 [上一页] [1] [下一页]
* 帖子主题:

请我一点指引,

2950
tjq1976
文章数:426
年度积分:133
历史总积分:2950
注册时间:2003/8/11
发站内信
发表于:2003/10/26 20:45:00
#0楼

Dim temp As String
Dim payroll(2) As String


Private Sub command1_Click()
Dim payroll(2) As String
For i = 0 To 2
  Label2(i).Caption = ""
Next i

ch$ = Chr(13) + Chr(0)

For i = 0 To 2
massage$ = ch$ + ch$ + ch$ + Label1(i).Caption
flag = 1
Title$ = Label1(i).Caption + "输入框"
Do While flag = 1
 temp$ = InputBox$(massage$, Title$, , 100, 4500)
 If temp$ <> "" Then
     flag = 0
       If Val(temp) > 100 Then
         info1 = MsgBox("是否接受输入的数据?", 36, "练习")
         If info1 = 6 Then
           flag = 0
         If info1 = 7 Then
           flag = 1
         End If
             
      Else
      flag = 0
      End If
End If
   payroll(i) = temp$

Loop

Label2(i).Caption = payroll(i) + "元"
 
Next i

End Sub


Private Sub Command2_Click()
End
End Sub
我遇到的问题是: 在调试这个程序时,提示编译错误,loop缺少do,可我的程序里明明是有do while的,请问专家我该如何解决这个问题,以后如果再遇到类似的问题该如何处理?在此先谢谢专家能在百忙中抽出时间解决我的问题,谢谢!!!
1173
Guan_Qing_Xin
文章数:175
年度积分:50
历史总积分:1173
注册时间:2002/8/7
发站内信
发表于:2003/10/27 11:00:00
#1楼
这是VB常见的出错后连错误提示也出错,上例实际的错误是有4个"if",但却只有3个"End if".
当"if"较多时,建议用缩入的方式写执行语句,然后每个"End if"与其自己的"if"列对齐.
29673
思南 管理员
文章数:14047
年度积分:62
历史总积分:29673
注册时间:2001/3/12
发站内信
发表于:2003/10/27 22:53:00
#2楼
没错,
If info1 = 6 Then
           flag = 0

后加上end if,或者写在一行:If info1 = 6 Then flag = 0

图
如您对论坛有好的建议或创想,请加大版主微信号:gkong2015
大版主推荐【工控百家谈】微信公众号,业界大拿原创内容分享

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

46.8003