欢迎来到天天文库
浏览记录
ID:5266679
大小:782.55 KB
页数:7页
时间:2017-12-07
《excel 2003 vba 基本语句结构:if-then循环语句》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、别怕,ExcelVBA其实很简单3.7.1If…Then语句应该选择什么问候语没戴表吗?现在才九点,应该说“早上好”。阿姨,下午好!都下午两点了,还早上?叔叔,早上好!究竟该怎么问好才对?“应该选择什么问候语?”这是小丽的烦恼。她带着这个问题走进VBA课堂……If语句来帮忙针对小丽的问题,老师给她提了一个建议。1别怕,ExcelVBA其实很简单你可以用VBA中的If语句写一个程序来帮助你。Then:译为“那么”。Time:函数返回用对话框提示当前系统时间。“早上好!”。IfTime<0.5ThenMsgBox"早上好!"If:译为“如果”。
2、0.5:2分之1天,即12小时,表示中午12点。<:比较运算符,判断当前系统时间是否小于中午12点,如果小于,返回True,否则返回False。把这句VBA代码译成汉语就是:如果当前系统时间小于中午12点,那么用对话框提示“早上好!”VBA的If语句就像是用“如果……那么……”来造句。2别怕,ExcelVBA其实很简单练习小课堂试一试,如果中午12点后提示下午好,你能仿照老师写的代码“造”一个这样的语句吗?参考答案SubIfTest()IfTime>=0.5ThenMsgBox"下午好!"EndSub3别怕,ExcelVBA其实很简单当需要判
3、断两次时如果时间在12点前,提示“上午好!”,否则提示“下午好!”,像这样的问题可以用“If…Then”来“造”不同的句子。如:SubSayHello()IfTime<0.5ThenMsgBox"早上好!"IfTime>=0.5ThenMsgBox"下午好!"EndSub但当进行两次比较运算时,这种语句并不是最佳选择,可以只用一个If语句代替它:这个句型总是在用“如果……那么……否则……”造句。IfTime<0.5ThenMsgBox"早上好!"ElseMsgBox"下午好!"如果当前系统时间小于中午12点,那么Else:译为“否则”。提示“早
4、上好!”,否则提示“下午好!”。4别怕,ExcelVBA其实很简单练习小课堂你还能用“If„Then„Else”造其他的句子吗?“如果活动工作表的A1单元格为空,则提示‘没有输入内容’,否则提示‘已经输入内容’”。把这个句子翻译出来,并运行它,看自己写对了吗?参考答案SubIfTest()IfRange("A1").Value=""ThenMsgBox"没有输入内容"ElseMsgBox"已经输入内容"EndSub5别怕,ExcelVBA其实很简单如果你不习惯阅读一行很长的代码,可以把If语句写成块的形式,事实上,更多的时如果只判断一次,这一块
5、候,我们都是这样使用If语句。可以省略不写。IfTime<0.5ThenMsgBox"早上好!"ElseMsgBox"下午好!"EndIfEndIf告诉VBA:If语句结束了。写成“块”的If语句必须以它结尾。这些代码是怎么工作的“如果……那么……否则”,If语句总是可以用这个句式来描述它的执行流程。结合这个思路,可以给If语句绘制出执行的流程图,如图3-37所示。图3-37If语句的流程图你知道吗?把程序写在【代码窗口】里,将光标定位在程序的中间,可以按F8键逐句执行语句观察程序的执行流程。更多判断的时候6别怕,ExcelVBA其实很简单
6、能让程序下午6点后提示“晚上好”吗?不仅要判断时间是否大于中午12点,还要判断是否大于下午6点,需要对条件判断两次以上,这是小丽遇到的新问题。她带着这个问题去求助老师,老师教给她另一种解决方法:如果当前系统时间小于中午12点,提示“早上好!”。IfTime<0.5ThenMsgBox"早上好!"ElseIfTime>0.75ThenMsgBox"晚上好!"ElseMsgBox"下午好!"EndIf否则如果当前时间大于下Else子句为可选语句,如果当前时午6点,提示“晚上好!”。间既不小于中午12点,也不大于下午6点,则执行它。如果要进行更多的判
7、断,就在中间加入ElseIf子句。本篇文章节选自《别怕,ExcelVBA其实很简单》ISBN:9787115289094人民邮电出版社7
此文档下载收益归作者所有