# 谢谢！我也没想到[如果 A=False 时, 其他判断条件会检查吗?]

Posted by 新手 on August 21, 1999 at 18:39:02:

In Reply to: 旧的写法比较好 posted by Arthur on August 21, 1999 at 13:36:05:

: : : 若有多个条件要判断如：
: : : If A=True then
: : : If B=False then
: : : If C >10 then
: : : If D=True then
: : : Do Something
: : : End If
: : : End If
: : : End If
: : : End If
: : : 请问有无较简单之写法？

: : 利用 And 逻辑运算子

: : If ( A = True And B = False) And ( C > 10 And D = True ) Then
: : Do Something
: : End If

: 虽然 j 的程式比较精简, But 如果是我不会考虑这种写法!

: 因为如果 A=False 时, 其他判断条件会检查吗?
: j 的写法会(所以浪费时间), 新手的写法反而比较有效率.

: 如果我判断 Var1 不是 Null, 而且是 "A" 开头的字串
: 写法一:
: if not IsNull(var1) Then
: if Left(Var1,1)="A" Then
: Do Something
: End if
: End if

: 写法二:
: if (not IsNull(var1)) And (Left(Var1,1)="A") Then
: Do Something
: End if

: 在写法二中, 如果 Var1= Null 会导致错误.
: 错误原因是 Left(Var1,1)
: 但写法一就可以避免, 所以我会浪费一点 Code, 除非我确定不会导致错误发生.

Follow Ups: