SUM+IF语句中使用逻辑函数AND和/或OR

       在Microsoft Excel中,当您在SUM+IF语句中使用逻辑函数AND/OR针对一个以上的条件测试一个区域时,测试可能不会如期望的那样执行。嵌套的IF语句可提供此功能;不过,采用另一种方法将会更方便,此方法使用下列公式。

       对于AND条件:=SUM(IF(Test1*Test2*...*Testn))

       对于OR 条件:=SUM(IF(Test1+Test2+...+Testn))

       使用SUM+IF语句计算某一区域内通过某一给定测试的单元格的数量或对一个区域内的某些值求和,这些值在另一区域(或同一区域)内对应的值满足指定的条件。此行为类似于Microsoft Excel中的DSUM函数。

       示例:下面的示例将计算区域A1:A10110之间(包括110)的值的数目。

       为实现此目的,您可以使用下面的嵌套IF语句:

       =SUM(IF(A1:A10>=1,IF(A1:A10<=10,1,0)))

       如果您要进行多次测试,也可以使用下面的方法,它更易读:

       =SUM(IF((A1:A10>=1)*(A1:A10<=10),1,0))

       下面的方法将计算在两个给定日期之间的日期的数量:

       =SUM(IF((A1:A10>=DATEVALUE("1/10/99"))*(A1:A10<=DATEVALUE("2/10/99")),1,0))

       备注必须通过同时按CTRL+SHIFT+ENTER键,将这些公式作为数组公式输入进去。数组不能引用整列。

       使用此方法,您实际上是在用一种逻辑测试的结果乘以另一种逻辑测试的结果,并将TRUEFALSE返回给SUM函数。您可以将它们看作是:

       TRUE*TRUE=1;TRUE*FALSE=0;FALSE*TRUE=0;FALSE*FALSE=0

       以上所示的方法计算了区域A1:A10内在两种测试中结果均为 TRUE的单元格的数量。如要为对应单元格(例如,B1:B10)中的值求和,请像下面这样修改公式:

       =SUM(IF((A1:A10>=1)*(A1:A10<=10),B1:B10,0))

       类似地,您可以在SUM+IF语句中实现OR运算。为此,请修改上述公式,将乘号(*)替换为加号(+)。这样将得到下面的一般公式:=SUM(IF((Test1)+(Test2)+...+(Testn),1,0))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值