趣文网,分享全网好句子、好文章!

条件判断语句IF Else 学会了他 你就是VBA处理复杂条件的大神

时间:2023-07-16 02:33:01

相关推荐

条件判断语句IF Else 学会了他 你就是VBA处理复杂条件的大神

Hi,大家好,本专栏将会从零开始和大家用图文的方式,让你从零基础学会VBA!有兴趣的小伙伴可以持续关注我,或者在专栏进行查看学习,愿与君携手共进!

相信大家经过前面的学习已经能够轻松的说出什么是VBA常量和变量,数组等等基本知识点?那么今天我们开始学习Excel 关于VBA中IF多条件语句的用法,让你轻松变大神,学会他了,你就能够跨入VBA世界的大门的钥匙啦!

先来看看对IF函数的解释:一般是指程序设计或Excel等软件中的条件函数,根据指定的条件来判断其“真”(TRUE)、“假”(FALSE),根据逻辑计算的真假值,从而返回相应的内容。其实VAB中间的IF函数和我们工作表的IF函数差不多,只是写法稍许有些不同。

if语句的含义:if语句字面意思就是如果条件为真,那么就执行if语句里面的程序,这个程序,一般指then后面的语句。另外需要说的一点是一个if语句可以没有end if,但绝对不能没有then,这一点是我们要注意到的。一个If或ElseIf语句可以嵌套在另一个If或ElseIf语句中。内部的If语句是根据最外层的If语句执行的。这使得VBScript能够轻松处理复杂的条件。

我们对这个IF判断函数分为4步为你揭开她的神秘面纱,学会了,你就能够处理一些录制宏不能完成的操作了。

Step-01 if……then……结构,这个结构的使用方法和我的工作表的IF函数有的类似,但是又不是完全相同。这个结构一般用在我们比较简单的判断语,我们通过如下的实例让你学会他!

实例:如果A1单元格不为空,那么就执行Then后面的语句,即弹出一个提示框“单元格不为空”

Sub Step01()

If Range("a1") <> "" Then MsgBox "单元格不为空"

End Sub

可以发现,这个语句只能完成一个条件判断,即我们判断A1单元格是不是为空,如果我们要同时增加一个条件来判断B1单元格是不是同时为空,那么这种写法就完成不了,这个时候我们可以对他进行改善,增加AND语句,如下所示:

Sub Step01()

If Range("a1") <> "" And Range("b1") <> "" Then MsgBox "单元格不为空"

End Sub

Step-02 if……then……结构,这个语句同样是用于单选择判断语句,具体用法看下面实例。

实例:如果单元格A11不为空值了,那么在相应的第二列单元格输出“我是Excel,喜欢可以关注我”

Sub Step02()

If Cells(11, 1) <> "" Then

Cells(11, 2) = "我是Excel,喜欢可以关注我"

Exit For

End If

End Sub

其实这种写法才是IF-then-End IF语句的最官方的写法,最最标准的写法。聪明的你,肯定发现上面第一个语句就是这个语句就是缩写方法。此时相信你已经能够明白单条件的IF的语句的使用方法啦!

Step-03 if ……then……else……end if结构,这个结构通常被我们用于2个条件的判断,即他们判断只有两个可能的情况先选择的判断语句,即一个硬币不是正面朝上的话,那么必定是反面朝上,具体我们可以见下面实例。

实例:对于A1单元格进行判断,如果单元格值为空,则在相应的B1单元格输出false,否则在C1输出Ture。

Sub Step03()

If Range("a1") = "" Then

Range("b1") = "False"

Else

Range("c1") = "True"

End If

End Sub

这个语句也是比较好理解,适用于场合为只有两种结果的情况下,我们只要按需选择即可。

Step-04 if ……then……elseif……then……else……end if结构,该结构用于多条件判断语句执行,很多时候,你需要检查非常多种的情况,你可以使用子句ElseIf来将一些If条件结合在一起。使用If…Then…ElseIf语句,你可以比用前面中的If…Then…Else语句可以完成更多的条件判断。这里是If…Then…ElseIf语句的语法:

PS: Else子句是可选的;如果当所有条件为假时,没有要执行的操作,那么你就可以忽略它。你的程序里可以包括任何多个ElseIf子句和条件。ElseIf子句总是出现在Else子句之前的,只有当ElseIf子句的条件为真时,它的语句才会被执行。

实例:A列的学员成绩进行分析判断,当他们的大于等于80分的为优秀;60到80之间的为及格;0到60分之间的为不及格;0分为考试无效。执行完成以后的结果如C列所示。

这个多条件判断是我们常用的,也是我们数据处理的时候经常会用的,对于这个的结构的理解,你可以将ElseIf—then理解为IF—Then单个结构进行叠加而成的,就像一件房子是可以有很多块砖瓦进行叠加的一样。

Step-05 if语句嵌套使用,这是也是我们常常用于多条件判断的语句,这个IF---Then函数之支持多层嵌套的,就如同我们2007版本的工作表IF函数支持不超过7层嵌套,有了嵌套,就让他真的变得异常强大,相信对函数熟悉的小伙伴肯定非常熟悉啦!

如上例子我们只是嵌套了2个IF 语句,当然你可以嵌套更多的语句,当然你增加的判断逻辑越多,那边他执行的效率将会下降,这个是在后面的学习会告诉你,如何加快多层IF判断语句的执行效率的。

好啦!快乐的时间总是非常短暂的,又到了和大家说再见的时候,如果大家感觉本文如果对你有所帮助的话,请帮忙转发点赞,谢谢您能观看到现在,我们下期再见!

我是Excel教案,关注我持续分享更多的Excel技巧!

如果有不明白的或者不懂的可以在下方留言,我们会一一解答的。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。
显示评论内容(2)
  1. 天翔2023-12-12 21:47天翔[吉林省网友]203.161.222.110
    掌握了IF+Else,VBA中的条件处理就能得心应手,真的是大神啊!
    顶0踩0
  2. 対着迗悾、說愛你2023-09-29 00:10対着迗悾、說愛你[湖南省网友]203.5.7.142
    IF+Else语句确实是VBA处理复杂条件的利器,学会了它,能让你在编程的世界里游刃有余。
    顶0踩0
相关阅读
if else语句在C语言中的用法有哪些?

if else语句在C语言中的用法有哪些?

在编程中,if else语句也是满足一定条件才会执行的

2022-11-27

[小雨学编程之C#] 19.3 流程控制语句 if else if

[小雨学编程之C#] 19.3 流程控制语句 if else if

虽然我们生活中,这种非此即彼的判断条件比比皆是,比如一个数字要么大于0,要么小于0,一个人要么已经过生日了,要么还没过生日:但是细心的小伙伴会发

2023-06-25

Excel VBA编程中必会的三大执行语句

Excel VBA编程中必会的三大执行语句

因此,要学会VBA编程,我们必须掌握它的三个非常常见的执行语句,以减少我们的代码书写量,毕竟我们还是需要用最简单的代码实现更加复杂的功能,这是每位

2023-06-07

VBA中重复操作的神器 Do……Loop循环语句 你值得拥有它

VBA中重复操作的神器 Do……Loop循环语句 你值得拥有它

Hi,大家好,本专栏将会从零开始和大家用图文的方式,让你从零基础学会VBA!有兴趣的小伙伴可以持续关注我,或者在专栏进行查看学习,愿与君携手共进!在

2011-12-11