Vba:使用 if and 测试多个条件
您可以在 VBA 中使用以下基本语法以及 IF 和 AND 来测试是否满足多个条件:
SubIfAnd ()
If Range(" A2 ") = "Warriors" And Range(" B2 ") > 100 Then
Range(" C2 ").Value = " Yes! "
Else
Range(" C2 ").Value = " No. "
End If
End Sub
此特定示例检查单元格A2中的值是否等于“Warriors”以及单元格B2中的值是否大于 100。
如果两个条件都满足,则值为“Yes!” » 返回到单元格C2中。
否则,值为“否”。返回到单元格C2 。
以下示例展示了如何在实践中使用此语法。
示例:在 VBA 中使用 IF AND 测试多个条件
假设我们在Excel中有以下数据:
假设我们要确定球队名称是否为 Warriors并且积分值是否大于 100 并将结果返回到单元格C2中。
我们可以创建以下宏来执行此操作:
SubIfAnd ()
If Range(" A2 ") = "Warriors" And Range(" B2 ") > 100 Then
Range(" C2 ").Value = " Yes! "
Else
Range(" C2 ").Value = " No. "
End If
End Sub
当我们运行这个宏时,我们会收到以下输出:
宏正确返回值“No”。在单元格C2中,因为不满足这两个条件。
如果我们更改单元格B2中的点的值,然后再次运行宏,它将测试新值是否满足这两个条件:
例如,假设我们将点值更改为 104 并再次运行宏:
宏正确返回值“Yes!” » 在单元格C2中,因为满足了两个条件。
如果您想在消息框中显示结果,可以使用以下语法:
SubIfAnd ()
If Range(" A2 ") = "Warriors" And Range(" B2 ") > 100 Then
MsgBox “ Yes! ”
Else
MsgBox “ No. ”
End If
End Sub
当我们运行这个宏时,我们会收到以下输出:
消息框返回“是!” » 由于球队名称为 Warriors 并且积分值大于 100。
注意:在此示例中,我们仅在宏中使用了一次And运算符来测试两个条件是否为真,但您可以根据需要使用任意多个And运算符来测试是否满足两个以上条件。
其他资源
以下教程说明如何在 VBA 中执行其他常见任务: