我尝试对C2:C2000中的所有单元格求和,如果A列中的相应单元格在(10;20]中,但我遇到了这个条件的问题。
我尝试过像=SUMIF(A2:A2000, AND(">10","<=20"), C2:C2000)这样的东西,但是返回0,这是不正确的。
谢谢。
编辑
可以使用=SUMIF(A2:A2000, ">10", C2:C2000) - SUMIF(A2:A2000, ">20", C2:C2000),但这不是我想要的。
发布于 2011-04-13 23:51:58
绕过复杂条件限制的简单方法是使用另一列作为“局部变量”-将D列作为条件的结果( and (etc)),如果希望减少屏幕杂乱,则隐藏它,并使用D2:D2000作为SUMIF的if部分。
编辑以添加备用选项:
http://support.microsoft.com/kb/275165
使用Sum(if( ..))而不是SUMIF,并使用乘积和总和代替and和of。
就我个人而言,我认为使用中间列更容易遵循和维护。
发布于 2012-07-24 04:10:02
OpenOffice中一种相对优雅的解决方案是使用Sumproduct --它将两个数组相乘。为Sumproduct提供连续的范围真值测试(我想它会返回一个布尔值数组)。如下所示:
SUMPRODUCT(C2:C2000;A2:A2000>"10";A2:A2000>="20")我从这里得到了这个:
http://user.services.openoffice.org/en/forum/viewtopic.php?f=9&t=28585
在OpenOffice中进行了测试--我不知道在Excel中是否有等价物。对不起,我没有可以测试的副本。
https://stackoverflow.com/questions/5650425
复制相似问题