如何在excel vba中使用if和and?

您可以将AND运算符与VBA IF 语句一起使用来测试多个条件,当您使用它时,它允许您同时测试两个条件,如果这两个条件都为 true,则为 true。并且,如果任何条件为 false,则结果返回 false。

组合 IF AND

  1. 首先,以关键字“IF”开始 IF 语句。
  2. 之后,指定您要测试的第一个条件。
  3. 然后使用 AND 关键字指定第二个条件
  4. 最后,指定要测试的第二个条件。
vba-if 语句

为了更好地理解,让我们看一个例子。

 Sub myMacro() If 1 = 1 And 2 > 1 Then MsgBox "Both of the conditions are true." Else MsgBox "Maybe one or both of the conditions are true." End If End Sub

如果您看上面的示例,我们指定了两个条件,第一个条件是 if (1 = 1),第二个条件是 (2 > 1),这里两个条件都为 true,这就是为什么它执行我们指定的代码行 if结果是真的。

现在,如果这两个条件中的任何一个为假,让我在这里使用不同的代码。

 Sub myMacro1() If 1 = 1 And 2 < 1 Then MsgBox "Both of the conditions are true." Else MsgBox "Maybe one or both of the conditions are true." End If End Sub

在上面的代码中,第二个条件为 false (2 < 1),当您运行此宏时,如果结果为 false,它将执行我们指定的代码行。

IF AND 多个条件

同样,您也可以同时测试两个以上的条件。让我们继续上面的示例并添加第三个条件。

 Sub myMacro2() If 1 = 1 And 2 > 1 And 1 - 1 = 0 Then MsgBox "All the conditions are true." Else MsgBox "Some conditions are false." End If End Sub

我们现在有三个条件要测试,我们在第二个条件之后使用 AND 来指定第三个条件。正如您在上面了解到的,使用 AND 时,所有条件都必须为真才能在结果中变为真。

当您运行此代码时,它会执行我们指定为 true 的代码行。

如果任何条件为 false,就像您在以下代码中所做的那样,它将返回 false。

 Sub myMacro3() If 1 = 1 And 2 < 1 And 1 + 1 = 0 Then MsgBox "All the conditions are true." Else MsgBox "Some conditions are false." End If End Sub

添加评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注