我已经谷歌搜索了一段时间,似乎无法让它工作。我使用Excel 2010并希望在AND和OR运算符的混合上计算行数。
我想做的是这样的事情
COUNTIFS($A:$A,"string1" , $B:$B,"string2" , $C:$C,{"stringA","stringB","stringC"})
这意味着在COUNTIFS函数中混合使用AND和OR运算符。 Col A和col B必须匹配字符串条件,但col C必须仅匹配作为条件给出的数组中的一个值。匹配colA和colB以及col C中的一个数组值。
另一种方法是为数组中的每个值创建一个COUNTIFS函数,如
COUNTIFS($A:$A,"string1" , $B:$B,"string2" , $C:$C,"stringA") + COUNTIFS($A:$A,"string1" , $B:$B,"string2" , $C:$C,"stringB") + COUNTIFS($A:$A,"string1" , $B:$B,"string2" , $C:$C,"stringC")
然而,这是很多重复的代码,这让我感到困扰!逻辑解决方案是将数组作为C列的条件传递。此外,我的数组包含三个以上的值......
当我在Excel中执行此操作时,接受公式并计算几行,但结果是低的。这不是我期待的结果。
那里有任何Excel-Pro可以告诉我这是否可行?它会为我节省很多工作! 谢谢!
答案 0 :(得分:3)
你可以使用
=SUM(COUNTIFS($A:$A,"string1",$B:$B,"string2",$C:$C,{"stringA","stringB","stringC"}))
你也可以使用与sumproduct相似的数组结构
=SUMPRODUCT(($A:$A="string1")*($B:$B="string2")*($C:$C={"stringA","stringB,"stringC"}))
答案 1 :(得分:1)
=SUMPRODUCT()
但仍然有点长。作为一个数组函数,你必须使用 Ctrl + Shift + Enter 。
=SUMPRODUCT(($A:$A="string1")+0,($B:$B="string2")+0,((($C:$C="stringA")+($C:$C="stringB")+($C:$C="stringC"))>0)+0)
免责声明:我还没有测试过。