全,
我有一个场景,如果("Summary").Range("C17").Text = "Yes“并且CBL或RBL不等于零,我想退出sub。我认为下面的代码可以工作,但是,如果CBL =0和RBL = 100,代码将不会退出sub。
Dim CBL As Long
CBL = Worksheets("Summary").Cells(97, Yearcol).Value
Dim RBL As Long
RBL = Worksheets("Summary").Cells(101, Yearcol).Value
'Check if prestage two projects
If Worksheets("Summary").Range("C17").Text = "Yes" And RBL Or CBL <> 0 Then发布于 2016-07-29 00:39:27
正确的语法(和条件)是:
If Worksheets("Summary").Range("C17").Text = "Yes" And (RBL <> 0 Or CBL <> 0) Then
Exit Sub
End If发布于 2016-07-29 00:49:41
您需要评估每个条件,因此这是不起作用的:
RBL Or CBL <> 0这是因为您只评估了CBL。为了评估RBL和CBL是否都不等于0,您需要逐个检查它们,如下所示:
RBL <> 0 OR CBL <> 0 由于您希望评估上述条件之一是TRUE,但也是Worksheets("Summary").Range("C17").Text = "Yes",因此需要将代码的第二部分括在括号中,因此以下代码将按预期工作:
If Worksheets("Summary").Range("C17").Text = "Yes" And (RBL <> 0 Or CBL <> 0) Then
Exit Sub
End Ifhttps://stackoverflow.com/questions/38641509
复制相似问题