注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

谷海涛 廊坊师范学院信息技术提高班十四期

当你的才华还撑不起你的野心时,就应该静下心来学习!

 
 
 

日志

 
 

重新学习If语句  

2016-12-19 22:32:37|  分类: VB |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

今天修改例子代码,发现个小问题(如下):

Private Sub cmdNext_Click()

    DoSave

    objRS.MoveNext '使下一记录成为当前记录

    '如果记录指针指向最后一个记录,则使其指向最后记录

    If objRS.EOF Then objRS.MoveLast  '为什么没有 End If ?我发现之前的                                  学习太不认真,许多简单的知识都没有掌握。

    '显示当前记录数据  

        txtUserName = objRS.Fields("用户名").Value

        txtPassWord = objRS.Fields("口令").Value

        txtMsg = objRS.AbsolutePosition & "/" & objRS.RecordCount  

End Sub

If语句学习正文如下(加粗带下划线的重点理解):

If...Then...Else 语句

根据表达式的值有条件地执行一组语句。

语法

If condition Then [statements][Else elsestatements]

或者,可以使用块形式的语法:

If condition Then

[statements]

[ElseIf condition-n Then

[elseifstatements] ...

[Else

[elsestatements]]

End If

If...Then...Else 语句的语法具有以下几个部分:

部分 描述

condition 必要参数。一个或多个具有下面两种类型的表达式:

数值表达式或字符串表达式,其运算结果为 True False。如果 condition Null,则 condition 会视为 False

TypeOf objectname Is objecttype 形式的表达式。其中的 objectname 是任何对象的引用,而 objecttype 则是任何有效的对象类型。如果 objectname objecttype 所指定的一种对象类型,则表达式为 True,否则为False

statements 在块形式中是可选参数;但是在单行形式中,且没有 Else 子句时,则为必要参数。一条或多条以冒号分开的语句,它们在 condition True 时执行。

condition-n 可选参数。与 condition 同。

elseifstatements 可选参数。一条或多条语句,它们在相关的 condition-n True 时执行。

elsestatements 可选参数。一条或多条语句,它们在前面的 condition condition-n 都不为 True 时执行。

说明:

可以使用单行形式(第一种语法)来做短小简单的测试。但是,块形式(第二种语法)则提供了更强的结构化与适应性,并且通常也是比较容易阅读、维护及调试的。

注意: 在单行形式中,按照 If...Then 判断的结果也可以执行多条语句。所有语句必须在同一行上并且以冒号分开,如下面语句所示:

If A > 10 Then A = A + 1 : B = B + A : C = C + B

在块形式中,If 语句必须是第一行语句。其中的 Else ElseIf,和 End If 部分可以只在之前加上行号或行标签。If 块必须以一个 End If 语句结束。例如:

If ......  Then

    ......

Else

    ......

End If

要决定某个语句是否为一个 If 块,可检查 Then 关键字之后是什么。如果在 Then 同一行之后,还有其它非注释的内容,则此语句就是单行形式的 If 语句。例如:

If TextUser.Text = ""  Then Command1.Enable= True  这就是单行形式的If语句。

Else ElseIf 子句都是可选的。在 If 块中,可以放置任意多个 ElseIf 子句,但是都必须在 Else 子句之前。If 块也可以是嵌套的。例如:

If n = 3 Or 4 Or 5 Then Label1 = n & "月是春季" ElseIf n = 6 Or 7 Or 8 Then Label1 = n & "月是夏季" ElseIf n = 9 Or 10 Or 11 Then Label1 = n & "月是秋季" Else Label1 = n & "月是冬季" End If

当程序运行到一个 If 块(第二种语法)时,condition 将被测试。如果 condition True,则在 Then 之后的语句会被执行。如果 condition False,则每个 ElseIf 部分的条件式(如果有的话)会依次计算并加以测试。如果找到某个为 True 的条件时,则其紧接在相关的 Then 之后的语句会被执行。如果没有一个 ElseIf 条件式为 True(或是根本就没有 ElseIf 子句),则程序会执行 Else 部分的语句。而在执行完 Then Else 之后的语句后,会从 End If 之后的语句继续执行。

提示 根据单一表达式来执行多种可能的动作时,Select Case 更为有用。不过,TypeOf objectname Is objecttype 子句不能在 Select Case 语句中使用。

注意 TypeOf 不能与诸如 LongInteger 以及其他不是 Object 的固定数据类型一起使用。

如有错误,欢迎大家指正。一起学习,共同进步!

  评论这张
 
阅读(91)| 评论(34)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017