vb中缺少语句结束是什么意思

PrivateSubText1_Change()IfVal(Text1)<=0ThenMsgBox"父亲的身高不能小于等于0!"ElseIsNumeric(Text1)=... Private Sub Text1_Change()
If Val(Text1) <= 0 Then
MsgBox "父亲的身高不能小于等于0!"
Else IsNumeric(Text1) = fase then
MsgBox "父亲身高输入了数字以外的字符!"
End If
说是少了语句结束。。。
展开
 我来答
anyway丶yy
高粉答主

2019-09-25 · 繁杂信息太多,你要学会辨别
知道答主
回答量:102
采纳率:100%
帮助的人:2.5万
展开全部

vb中缺少语句结束的意思是说语法不对引起语句不匹配或者语句没有写完整导致编译器无法找到结束语句符。

需要将 fase 改成False

else 改成 ElseIf

过程最后缺End Sub

最后,如果输入非数字的话始终会弹出 --"父亲的身高不能小于等于0!" 的对话框,因为Val参数为非数字时始终返回0。

扩展资料

对象与类

对象(Object)

Visual Basic.NET 具有“面向对象”的特性,Visual Basic.NET 应用种程序的基本单元是对象,用 Visual Basic.NET 编程就是用“对象”组装程序。这种“面向对象”的编程方法与传统的全部用代码编制程序的方法有很大区别,就像用集成电路芯片组装电视机和用三极管,二极管组装电视机的区别一样。显然,“面向对象”的编程方法比传统的编程方法更简单,更方便,并且编写出的程序也更加稳定。因此,“对象”可以被看做 Visual Basic.NET 程序设计的核心。

在 Visual Basic.NET程序设计中,对象中还可以包含头,手,腿,脚等部位,其中的每个部位又可以单独作为作为被研究的对象。在 Visual Basic.NET程序设计中,整个应用程序就是一个对象,应用程序中又包含着窗体(Form),命令按钮(Command),菜单(Menu)等对象。

类(Class)

在 Visual Basic.NET中,对象是由类创建的,因此对象可以说是类的具体实例,这就好比是蛋糕和做蛋糕的模具之间的关系。

各种不同的对象分属于各种不同的种类。同一类对象可能具有一些不同的特征(或是说同一类对象不一定具有完全相同的特性);具有某些相同的特性的对象,不一定是同一类对象。

参考资料来源:百度百科-Visual Basic



亿劫修行
2014-10-29 · TA获得超过199个赞
知道小有建树答主
回答量:92
采纳率:100%
帮助的人:27万
展开全部
你好!因为我的电脑上已经没有VB6了,所以无法通过运行验证你的代码,但是仍然想给你一些可能的答案。

  首先,end sub 总是与 private sub成对出现的,但是在你的代码的结尾,就没有看到end sub,这是不合理的。可能被你误删了。

  其次,也可能是在某个if语句之后,没有使用 end if 来结尾。但是由于你编写代码没有养成格式缩进的良好习惯,已经很难看出是在哪里缺少 end if 了。为此,给你两个建议:
  一是在使用结构语句时,结构中的语句应该比关键词缩进3格,如果结构语句1之内嵌套着结构语句2,那么2中的语句依次再缩进3格,以此类推。这样的好处是,编写出来的代码,层次分明,便于阅读与分析。
  二是在使用结构语句时,先把关键词都写完,并且其缩进完全相同,然后才填写其中的过程代码,这样的好处是保证关键词成对出现,不会缺失。

下面给一些例子,供你参考:

private sub uiunxun()
dim i as integer
dim a as integer

for i = 0 to 10
if i < 5 then
a=a+2*i
else
a=a+i
end if
next i

do while a >0
a=a-1
loop
end sub

如此格式,便能脉络清楚,层次分明了。
我的回答,并不是希望得到你百度式的“采纳”,只是希望对你有所帮助我就满足了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
szqaly
推荐于2017-10-14 · TA获得超过1745个赞
知道大有可为答主
回答量:2107
采纳率:77%
帮助的人:1534万
展开全部
Private Sub Text1_Change()
    If Val(Text1) <= 0 Then
        MsgBox "父亲的身高不能小于等于0!"
    ElseIf IsNumeric(Text1) = False Then
        MsgBox "父亲身高输入了数字以外的字符!"
    End If
End Sub

三点错误:

 fase 改成False

else 改成 ElseIf

过程最后缺End Sub


还有个逻辑错误:假如你输入非数字的话始终会弹出 --"父亲的身高不能小于等于0!" 的对话框,因为Val 参数为非数字时始终返回0。

所以改成:

Private Sub Text1_Change()
    If Text1.Text <> "" Then
        If IsNumeric(Text1) = False Then
            MsgBox "父亲身高输入了数字以外的字符!"
        ElseIf Val(Text1) <= 0 Then
            MsgBox "父亲的身高不能小于等于0!"
        End If
    End If
End Sub

 这样在文本框为空时不必弹出警告对话框。


Private Sub Text1_Change()
    If Text1.Text <> "" And Text1.Text <> "-" Then
        If IsNumeric(Text1) = False Then
            MsgBox "父亲身高输入了数字以外的字符!"
        ElseIf Val(Text1) <= 0 Then
            MsgBox "父亲的身高不能小于等于0!"
        End If
    End If
End Sub

如果这样或许会更好一些

本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
woshidaniel
2015-08-23 · TA获得超过9240个赞
知道小有建树答主
回答量:1760
采纳率:96%
帮助的人:954万
展开全部

vb中缺少语句结束是什么意思是说语法不对引起语句不匹配或者语句没有写完整导致编译器无法找到结束语句符。

正确代码

Private Sub Text1_Change()
    If Val(Text1) <= 0 Then
        MsgBox "父亲的身高不能小于等于0!"
    ElseIf IsNumeric(Text1) = false then
        MsgBox "父亲身高输入了数字以外的字符!"
    End If
End Sub

原因:

vb中

1、if语句的格式是

if 条件 then

end if

或者

if 条件 then

elseif 条件 then

end if

2、过程定义格式

Sub 过程名称

End Sub

3、注意拼写False别犯错误。

VB因为忽略大小写,所以大小写无所谓,但变量定义要小心,最好最前面都写上

Option Explicit '这样,没有声明的变量都无法使用,避免出现不必要的错误。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
sbj518
2015-05-20 · TA获得超过4.4万个赞
知道大有可为答主
回答量:1.1万
采纳率:81%
帮助的人:5305万
展开全部
End Sub
上面少了一个loop
do while i>0

loop

这样一个循环结构的,你少写了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式