如何在VBA中评估`IF`和`AND`语句?

时间:2014-12-05 19:47:41

标签: excel vba excel-vba

在Java或C#中,AND语句从左到右进行评估。如果第一个条件不为真,则不评估第二个条件。如果您的第二个条件会导致java.lang.arrayindexoutofboundsexception

,这将非常有用

我的Excel-VBA应用程序中有类似的情况。我有一个if语句:

If condition1 = false And cellElement - 1 <> "" Then ...

即使VBA - Run Time Error 1004 'Application Defined or Object Defined Error'为假,它也会抛出condition1

我的问题是,即使第一个条件为假,VBA也会评估AND语句中的第二个条件吗?

我目前的工作很丑陋,但确实有效:

Dim b As Boolean
If condition1 = false Then
   b = false
Else
   b = cellElement - 1 <> ""

If b Then...

谢谢!

0 个答案:

没有答案