| 初识VBA:第五课 小数点按钮及分支语句 |
|
| 作者:李寻欢『… 文章来源:access爱好者 点击数: 本日:{$DayHits} 更新时间:2005-8-16 10:54:41 |
这节课我们继续来写小数点按钮的代码写完。(程序中的01至13是行号,为了解释方便而加上去的,在程序里不要加上该行号)。 Private Sub cmdPoin_Click() 01 Dim i As Integer 02 Dim j As String 03 Dim PoinTag As Boolean 04 For i = 1 To Len(txtResult) 05 j = Mid(txtResult, i, 1) 06 If j = "." Then 07 PoinTag = True 08 Exit For 09 End If 10 Next i 11 If PoinTag = False Then 12 txtResult = txtResult & "." 13 End If End Sub
01-----03定义变量,01定义一个整型变量用来保存循环的次数,02定义一个字符串变量用来保存文本框中的字符,03定义一个布尔变量,用来保存小数点的存在状态,PoinTag=true表示已有小数点,PoinTag=false表示没有小数点。
04-----10是一个for循环,循环体里面嵌套着一个IF判断语句。
04从I=1到文本框txtResult的总字符数为止,步长为1。
05 j=用Mid函数来截取的那一个字符,Mid函数的语法:Mid(字符串或代表字符串的变量,从第几个字符开始,截取几个字符),Mid(txtResult, i, 1)就可以解释为从第i个开始,截取文本框中的1个字符。每次循环i都加1,所以每次截取的字符都不一样,从第1个字符开始,逐个截取文本框中的字符,直到最后一个。
06 如果j=小数点,就
07让变量PoinTag=True
08 退出循环
09 结束If语句
10 下一个i,也就是i=i+1,再返回04行重新开始循环
11 如果变量PoinTag=false,那么
12 文本框txtResult中的文本等于原有的文本尾部再加上小数点
13 结束if 语句
在这个按钮事件中我们用到了IF语句及循环语句,循环语句下节课再讲。上节课我们用了一个select case 语句,IF及Select case语句都是判断语句,或称为分支语句。由于在我们以后的编程中会较多地使用判断语句,尤其是上面提到的两种判断语句,所以在这里我想再着重地讲一讲这两个判断语句的语法及用法。 Select case 的语法我们上节课已讲过了,看一下if语句: If语句有以下几种形式: 1、if 条件 then 语句序列 end if 解释:如果满足条件,就执行语句序列里的所有语句,语句序列就是一条或一条以上的语句,当然,也可以为空,就是没有语句。 例子: if 李寻欢.性别=”男” then msgbox “他是青蛙!” end if 2、if 条件 then 语句序列1 else 语句序列2 end if 解释:如果满足条件,就执行语句序列1,否则就执行语句序列2。 例子: if 李寻欢.性别=”男” then msgbox “他是青蛙!” else msgbox “他是恐龙!” end if 3、 if 条件1 then 语句序列1 elseif 条件2 then 语句序列2 elseif 条件3 then 语句序列3 elseif 条件n then 语句序列n end if 解释:如果满足条件1就执行语句序列1,否则如果满足条件2就执行语句序列2,否则如果满足条件3就执行语句序列3,否则如果满足条件n,就执行语句序列n。 例子: if 李寻欢.性别=”男” then msgbox “他是青蛙!” elseif 李寻欢.性别=”女” then msgbox “他是恐龙!” elseif 李寻欢.性别=”不男不女” then msgbox “他是怪物!” msgbox “大家快跑呀!” msgbox “哎呀!我的鞋掉了!” msgbox “鞋掉了有什么了不起,我的裤子都掉了!” end if 上面的所有例子中,李寻欢是一个对象,性别是该对象的属性,引用一个对象的属性就用这种形式:李寻欢.性别,具体的对象及属性我们以后再说。Msgbox是一个事件处理函数,它的作用是在对话框中显示消息,等待用户单击按钮,并返回一个整数来表示单击的是哪一个按钮。在上面跟在msgbox 函数后面的双引号中的文字,将会显示在对话框中。
既然if语句及select case语句都是判断语句,那到底什么时候该用if语句,什么时候该用select case语句呢?我个人是这样理解的:要判断三个以下条件的,我用If语句,三个条件以上的我用select语句,因为用select case语句显得更为直观一点,使程序更易看懂。上一节课的select case语句如果用if语句来写,应该如何写?请大家自已写一下
|
| 文章录入:tm 责任编辑:tm |
|
上一篇文章: 初识VBA:第六课 小数点代码分析及For循环语句
下一篇文章: 初识VBA:第四课 计算器代码的编写 |
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |