Table of contents
在编程语言中,条件语句被用来根据指定的条件执行一组动作。 在这篇文章中,我们将向你展示什么是 如果 - 然后 - 否则 中的条件语句。 VBA Excel是什么以及如何使用它。
下载工作手册
你可以从这里下载免费的练习Excel工作簿。
VBA中的if-then-Else.xlsm
VBA中的If - Then - Else语句简介
VBA 如果 - 然后 - 否则 条件语句主要用于决定条件的执行流程。 如果条件为真,则执行某一组动作,如果条件为假,则执行另一组动作。
- 语法
If condition Then [statements] [Else else_statements]。
或者。
If condition Then [statements] [Else [else_statements]] End If
在这里。
争论 | 必备/可选 | 描述 |
---|---|---|
条件 | 需要 | 一个数字表达式或一个字符串表达式,评估该表达式是否为 真 或 假的 如果 条件 为空,则被认为是 假的 . |
声明 | 可选 | 一个单行的表格,没有 其他的 一个或多个语句必须用冒号隔开。 如果 条件 是 真 ,则执行该语句。 |
其他声明 | 可选 | 如果没有以前的声明,则执行一个或多个声明 条件 是 真 . |
在Excel中使用VBA If - Then - Else语句的4个例子
在本节中,你将学习如何使用 如果-那么-相反 在 VBA 代码有4个例子。
1.用If - Then - Else语句寻找两个数字之间最大的数字
如果你有两个数字,你想找出哪一个更大(或更小),那么你可以使用 如果-那么-相反 声明中 VBA .
步骤。
- 新闻 Alt + F11 在你的键盘上,或进入标签 开发人员 -> Visual Basic 打开 Visual Basic编辑器 .
- 在弹出的代码窗口中,从菜单栏中,点击 插入-> 模块 .
- 复制以下代码并将其粘贴到代码窗口。
Private Sub BiggestNumber() Dim Num1 As Integer Dim Num2 As Integer Num1 = 12345 Num2 = 12335 If Num1> Num2 Then MsgBox "第一个数字大于第二个数字" ElseIf Num2> Num1 Then MsgBox "第二个数字大于第一个数字" Else MsgBox "第一个数字和第二个数字相等" End If End Sub
你的代码现在可以运行了。
这里,我们正在比较两个数字 12345 和 12335 这个过程通常非常适合于在大数据集中寻找大数字。
- 新闻 F5 在你的键盘上选择"",或从菜单栏中选择 运行-> 运行Sub/UserForm 你也可以直接点击 小的播放图标 子菜单栏中的 "运行宏"。
你将在Excel的 MsgBox
在我们的案例中,数量 12345 - 存储在变量中的 Num1 - 大于 12335 , Num2 所以MsgBox显示我们 第一个数字比第二个数字大 .
阅读更多:Excel公式生成随机数(5个例子)。
2.在VBA中使用If - Then - Else语句检查学生成绩
你可以通过以下语句来检查学生是否通过考试 VBA 代码。
步骤。
- 与之前的方法一样,打开 Visual Basic编辑器 从 开发商 选项卡和 插入 a 模块 在代码窗口中。
- 在代码窗口,复制以下代码并粘贴。
Sub CheckResult() If Range("D5").Value> 33 Then MsgBox "John's Result is Pass" Else MsgBox "John's Result is Fail" End If End Sub
你的代码现在可以运行了。
这段代码将检查细胞是否 D5 持有一个大于 33 如果是这样,它将显示一个输出,如果不是这样,它将显示其他东西。
- 运行 宏,你将根据你的代码得到结果。
看看上述数据集的结果,Cell D5 持有 95 这当然超过了 33 ,因此它显示的是 结果是通过 但如果我们运行细胞的代码 D7 (22),那么它就会显示为其他情况。
阅读更多。 如何使用VBA案例声明(13个例子)
类似读物
- 如何在Excel VBA中使用对数函数(5个合适的例子)
- 在Excel中使用VBA LTrim函数(4个例子)
- 如何在Excel中使用VBA的FileDateTime函数(3种使用方法)
- 使用VBA的Mod操作符(9个例子)
- Excel中的VBA EXP函数(5个例子)
3.在VBA中使用多个If - Then - Else语句更新学生成绩中的注释
你已经学会了如何通过一个简单的方法来提取一个学生是否通过。 如果-那么-相反 语句,但这一次你将了解到 多个If-Then-Else 语句,举例如下。
我们将运行一个 VBA 编码来填写这些 评论 基于多种条件的方框。
步骤。
- 与之前的方法一样,打开 Visual Basic编辑器 从 开发商 选项卡和 插入 a 模块 在代码窗口中。
- 在代码窗口,复制以下代码并粘贴。
Sub UpdateComment() For Each grade In Range("D5:D10") If grade = "A" Then grade.Offset(0, 1).Value = "Great Work" ElseIf grade = "B" Then grade.Offset(0, 1).Value = "Keep It Up" ElseIf grade = "C" Then grade.Offset(0, 1).Value = "Needs Improvement" Else grade.Offset(0, 1).Value = "Teacher Meeting" End If Next grades End子
你的代码现在可以运行了。
这段代码将根据学生取得的成绩打印评论。
- 运转 这段代码,请看下图,其中的注释框被适当的结果所填充。
4.用If-Then-Else语句根据Excel中的代码更新Cardinal方向
你也可以利用 如果-那么-相反 请看下图,我们将根据所给的首字母来找出方向。
步骤。
- 开放式 Visual Basic编辑器 从 开发商 选项卡和 插入 a 模块 在代码窗口中。
- 在代码窗口,复制以下代码并粘贴。
Sub UpdateDir() For Each iDirection In Range("B5:B8") If iDirection = "N" Then iDirection.Offset(0, 1).Value = "North" ElseIf iDirection = "S" Then iDirection.Offset(0, 1).Value = "South" ElseIf iDirection = "E" Then iDirection.Offset(0, 1).Value = "East" Else iDirection.Offset(0, 1) The Value = "West" End If Next iDirection End子
你的代码现在可以运行了。
- 运行 这段代码,你将在各自的单元格中得到方向名称。
或者,如果你只想根据代码找到一个方向,那么你可以使用下面的代码。
Sub UpdateDirections() Dim iDirection As String Dim iDirectionName As String iDirection = Range("B5").Value If iDirection = "N" Then iDirectionName = "North" ElseIf iDirection = "S" Then iDirectionName = "South" ElseIf iDirection = "E" Then iDirectionName = "East" Else iDirectionName = "West" End If Range("C5").Value = iDirectionName End Sub
这段代码将从单元格中取值 B5 考虑,并根据它在单元格中返回结果。 C5 .
例如,如果你写" N "在细胞 B5 ,它将给你" 北方 ;如果你写" S "在细胞 B5 ,它将向你展示" 南方 "在细胞 C5 .
总结
这篇文章告诉你如何使用 如果 - 然后 - 否则 语句在Excel中用 VBA 我希望这篇文章对你非常有益。 如果你对这个主题有任何疑问,请随时提问。