在VBA中,IF-Then-Else结构可以认为是IF-Then结构的扩展。在这种结构中,可以为IF条件逻辑表达式中,添加执行语句。也就是,当条件不符合IF逻辑表达式时,可以通过设置Else语句来设置其他操作语句。
IF-TheIIF-Then-ElseIF-Then-ElseF-Then-Elsen-Else结构的典型语法结构是:
True_instructions1
ElseIf condition1 then
True_instructions2
......
Else
True_instructions-end
End If
使用IF-Then-Else结构,可以处理比IF-Then结构更加复杂的问题。因为,在IF-Then-Else结构中,可以很方便地处理更多的情况和内容。
例如,使用If-Then-Else结构来获取不同的折扣信息,具体的折扣信息如下:
a. 销售数量在5000以上,折扣是0.65;
b. 销售数量在1500~5000,折扣是0.85;
c. 销售数量在800~1500,折扣是0.95;
d. 销售数量在800以下,全额支付。
根据上面的折扣信息,编写对应的程序代码如下:
步骤1、进入VBE,打开代码窗口,在其中输入代码如下:
Sub Check_Quantity()
Dim intSaleQuantity As Integer
Dim strMsg As String
Dim strMsgRev As String
intSaleQuantity = CInt(InputBox("Please Enter the quantity"))
strMsg = "折扣是"
If intSaleQuantity >= 5000 Then
strMsgRev = strMsg & "0.65"
MsgBox strMsgRev
ElseIf intSaleQuantity < 5000 And intSaleQuantity > 1500 Then
strMsgRev = strMsg & "0.85"
MsgBox strMsgRev
ElseIf intSaleQuantity < 1500 And intSaleQuantity > 800 Then
strMsgRev = strMsg & "0.95"
MsgBox strMsgRev
Else
MsgBox "请付全额"
End If
End Sub
在以上代码中,将销售折扣等级分别列成对应的逻辑表达式,然后通过使用If-Then-Else结构来完成每种表达式对应的情况。
步骤2、在VBE中,按F5键测试程序。在输入框中输入3600,则对话框提示“折扣是0.85”。
说明:在以上的代码中使用了Cint函数,将函数Inputbox接收的字符串变量转换为整型变量。