VBA逻辑运算符

If和else If语句的同一行中可以有多个条件。要测试多个条件, 你需要逻辑运算符。
以下是VBA支持的以下逻辑运算符:
1. AND:AND逻辑运算符用于组合多个条件。如果所有条件都为True, 则返回True。如果任何条件为False, 则返回False。
例如, 你要检查数字是否大于10但小于20, 则可以使用AND运算符测试此条件。

Dim Age As IntegerAge = 12If Age > 10 And Age < 20 ThenMsgBox "Between 10 and 20"ElseMsgBox "Not Between 10 and 20"End IfIf Age > 20 And < 30 Then

在上面的示例中, 我们仅使用变量Age。但是你需要两次键入变量, 一次在AND运算符之前, 一次在AND运算符之后。
仅当两个条件都为True时, 整个行才为True。如果其中之一为False, 则整行变为False。
2. OR:OR运算符用于合并多个条件。如果一个条件中的任何一个为True, 则返回True, 如果所有False, 则返回False。
例如, 在代码窗口中创建一个新的Sub。
Dim x As IntegerDim y As Integerx = 10y = 20If x = 10 Or y = 20 ThenMsgBox "Valid Number"ElseMsgBox "Non Valid Number"End If

该代码设置了两个整数变量x和y。 x的值为10, y的值为20。 IF语句正在尝试测试这些数字中的数字:
如果x = 10或y = 20那么
有效数字是10和20。我们不在乎x和y分别是10和20, 只要其中至少一个拥有正确的数字, 就可以了。
运行代码, 你将看到第一个消息框显示“有效号码”。现在更改代码, 使x的值为30。
重新运行该程序, 你会发现第一个消息框仍然显示。然后, 将y的值更改为40, 现在两个数字都没有正确的值。在这种情况下, 程序运行时将显示第二个消息框。
3. NOT:NOT运算符用作反函数。如果条件ID为True, 则返回False。如果条件为False, 则返回True。
【VBA逻辑运算符】例如, 在代码窗口中创建一个新的子项, 然后使用布尔标志变量。
Dim BooleanFlag As BooleanBooleanFlag = TrueIf BooleanFlag = True ThenMsgBox "It's True"ElseMsgBox "It's False"End If

    推荐阅读