如何在vba中使用if not?
在 VBA 中,当您使用IF 语句时,如果您指定要测试的条件为 TRUE,则它会执行一行代码。但是,当您将 NOT 运算符与 IF 一起使用时,它会检查您指定的条件是否不为 TRUE,并根据该条件执行代码。
这就像执行相反的 IF 语句,TRUE 变为 FALSE,FALSE 变为 TRUE。
假设您想测试 A < B 是否成立,如果此条件为真 IF 将返回 TRUE,对吗?但是当你使用 IF NOT A < B 时,它将返回 FALSE。
注意: NOT 是逻辑运算符。
使用 VBA IF NOT 的示例
这里我们看一个简单的例子来理解它:
Sub myMacro() Dim A As Range, B As Range Set A = Range("A1") Set B = Range("B1") If Not A < B Then MsgBox "A is not greater than B." Else MsgBox "B is not greater than A." End If End Sub
在上面的代码中,您使用 NOT 运算符来测试 B 是否不大于 A。
如果你看条件语句,你可以明白,实际要测试的条件是B是否大于A,但由于我们使用NOT语句,如果条件为TRUE,它将返回FALSE。
这是另一个你可以用来理解它的例子。
Sub myMacro() If Not ActiveSheet.Name = Sheets("Sheet1").Name Then Sheets("Sheet1").Activate End If End Sub
现在,在此代码中,您使用NOT 和 IF来查看活动工作表是否是 Sheet1 ,如果不是,我们指定的代码行将激活 Sheet1 。