首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Excel: CountIf (cell1 > cell2和cell3 > cell4)

Excel: CountIf (cell1 > cell2和cell3 > cell4)
EN

Stack Overflow用户
提问于 2016-03-17 03:20:52
回答 3查看 289关注 0票数 1

我需要比较两组两列,并找到符合特定标准的ID数。

代码语言:javascript
复制
A            B             C           D             E
ID:        ListNum:      RefNum:     List2Num:      Ref2Num:          
1           10             5           12            6
2            3             7           10            2
3           12             8            1            5
4            2            15           13            4
5            4            11            2            8
6            6             9            1            3

假设包含ID = "1“的单元格是A2,然后下降到A7

我必须计算I的数量,这些I的ListNum高于RefNum,List2Num也高于Ref2Num。为了计算ID,必须满足这两个条件。

我使用了以下公式:=COUNT(IF(B2:B7 > C2:C7)和(D2:D7 > E2:E7))

我得到了一个值,但这不是正确的计数(这是两个条件的总和,而不是只计算一次)。最后的答案应该是1。任何帮助都将不胜感激,谢谢!

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-03-17 04:24:44

您的字符串不起作用的原因之一是:在您的公式中,您使用&意思是AND,但实际上是串连字符串。

选项1:数组公式

如果和不适用于数组,那么包含它们的普通公式就不能工作了。因此,使用数组公式代替:

您需要将其输入为数组公式(您需要按下control enter而不是enter,当您将公式放入其中时):

代码语言:javascript
复制
=SUM((B2:B7 > C2:C7)*(D2:D7 > E2:E7))

当它在单元格中时,它将以大括号显示它是一个数组公式。就像这样:

代码语言:javascript
复制
{=SUM((B2:B7 > C2:C7)*(D2:D7 > E2:E7))}

在这个公式中,X>Y将返回1或0作为true或false。所以乘法和和加是一样的,加法和OR是一样的。然后,(B2:B7 > C2:C7)*(D2:D7 > E2:E7)的意思是B2:B7 > C2:C7 AND D2:D7 > E2:E7,它返回一个1和0的数组,然后将它们相加得到计数。

备选案文2: SUMPRODUCT

有一个正常函数,其唯一目的是将数组相乘,然后以与数组公式相同的方式将它们相加: SUMPRODUCT

SUMPRODUCT的问题是数组必须是数字,而不是逻辑的真值和假值,所以这些都可以:

代码语言:javascript
复制
=SUMPRODUCT(--(B2:B7 > C2:C7),--(D2:D7 > E2:E7))
=SUMPRODUCT((B2:B7 > C2:C7)*1,(D2:D7 > E2:E7)*1)
=SUMPRODUCT((B2:B7 > C2:C7)+0,(D2:D7 > E2:E7)+0)

但这并不意味着:

代码语言:javascript
复制
=SUMPRODUCT((B2:B7 > C2:C7),(D2:D7 > E2:E7))

但是SUMPRODUCT是一个正常的函数,所以您不需要使用控制移位- enter来输入它。

票数 2
EN

Stack Overflow用户

发布于 2016-03-17 03:28:19

尝试将此公式输入单元格F1中。

代码语言:javascript
复制
=IF(AND(B1 > C1, D1 > E1), 1, 0)

然后,只需为您实际拥有的行取F列的总和,您就应该得到答案(对于上面给出的示例数据,它是1 )。

票数 0
EN

Stack Overflow用户

发布于 2016-03-17 04:29:02

如果你把一个简单的公式放在你的桌子旁边,你可以自动填充一直下去。接下来,您可以在该列中计算True值的数量(参见图)。按照Tim的建议,您可以合并成一个IF语句。

这两个公式是

  • “=和(B2>C2,D2>E2)”
  • "=COUNTIF(G2:G7,真)“

链接到可能解决方案的图片

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36051085

复制
相关文章

相似问题

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