【问题标题】:Excel - Count how many rows have equal numbers in two columnsExcel - 计算两列中有多少行具有相同的数字
【发布时间】:2014-03-16 09:47:02
【问题描述】:

如我的图片中所述,目标是计算 A 列中的“AAA”、“BBB”和“CCC”有多少次 B 列和 C 列在各自的行中彼此相等。 B 列和 C 列中的值是整数。我没有隐藏任何小数位。

我意识到我可以简单地在 B1=C1(B2=C2... 等等)的位置添加一个额外的列,然后运行 ​​COUNTIFS 公式来计算 TRUE 单元格的数量。那是 B 计划。我觉得有一种方法可以做到这一点,但不会用额外的数据列使我的工作表膨胀……

我引用了以下线程:
Count number of times a number is found between two columns in excel

【问题讨论】:

    标签: excel


    【解决方案1】:

    试试这个:

    =SUMPRODUCT((A:A="AAA")*(B:B=C:C))
    

    另外我建议你使用精确范围来加快公式:

    =SUMPRODUCT((A1:A100="AAA")*(B1:B100=C1:C100))
    

    【讨论】:

    • 首先,谢谢!我又玩了一些,我意识到你的解决方案只是在玩 AND Gate 逻辑。我不明白为什么 SUMPRODUCT 会被这样使用。
    • 你完全正确!这是布尔逻辑。 =SUMPRODUCT((A1:A100="AAA")*(B1:B100=C1:C100)) 为您提供 =SUMPRODUCT({TRUE,TRUE,FALSE,..}*{FASLE,TRUE,FALSE,..}) 其中只有 TRUE*TRUE 为您提供 1 和其他组合 - 0。因此它的计算结果为 0+1+0+.. 和 sumproduct 将此值相加以提供结果
    • 另外,感谢您提供有关使用精确范围的提示。实际上,在发布此内容之前,我已经意识到有必要这样做。在我的真实电子表格(有更多公式)上,我编辑了所有公式,以不使用朋友建议的精确范围。我的工作簿的结果是我尝试输入的每个数据单元格都有 2 秒的延迟。我要说的是,我很高兴电子表格存储在 Dropbox 上。 Dropbox 的版本控制让我只需点击几下即可恢复我的电子表格。
    • 好的,我想我明白为什么现在使用 SUMPRODUCT() 了。这是因为它以数组作为参数,而不是 SUM() 中的数字。
    • 其实你也可以使用=SUM((A1:A100="AAA")*(B1:B100=C1:C100)),但是它需要数组输入(即你应该按CTRL+SHIFT+ENTER来评估它),而使用SUMPRODUCT不需要数组输入(因为按照设计,这个函数已经是数组函数)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-05
    • 2012-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多