首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >If语句场景

If语句场景
EN

Stack Overflow用户
提问于 2016-07-29 00:05:16
回答 2查看 48关注 0票数 0

全,

我有一个场景,如果("Summary").Range("C17").Text = "Yes“并且CBL或RBL不等于零,我想退出sub。我认为下面的代码可以工作,但是,如果CBL =0和RBL = 100,代码将不会退出sub。

代码语言:javascript
复制
 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
EN

回答 2

Stack Overflow用户

发布于 2016-07-29 00:39:27

正确的语法(和条件)是:

代码语言:javascript
复制
If Worksheets("Summary").Range("C17").Text = "Yes" And (RBL <> 0 Or CBL <> 0)  Then
    Exit Sub
End If
票数 0
EN

Stack Overflow用户

发布于 2016-07-29 00:49:41

您需要评估每个条件,因此这是不起作用的:

代码语言:javascript
复制
RBL Or CBL <> 0

这是因为您只评估了CBL。为了评估RBLCBL是否都不等于0,您需要逐个检查它们,如下所示:

代码语言:javascript
复制
RBL <> 0 OR CBL <> 0    

由于您希望评估上述条件之一是TRUE,但也是Worksheets("Summary").Range("C17").Text = "Yes",因此需要将代码的第二部分括在括号中,因此以下代码将按预期工作:

代码语言:javascript
复制
If Worksheets("Summary").Range("C17").Text = "Yes" And (RBL <> 0 Or CBL <> 0)  Then
    Exit Sub
End If
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38641509

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档