【问题标题】:How to sum up unique cell values based on a condition? [closed]如何根据条件总结唯一的单元格值? [关闭]
【发布时间】:2014-11-15 00:25:39
【问题描述】:

在 D10 中,我想对 ColumnD 值求和(在 2:9 行中,使用 VLOOOKP 公式得出),但每个不同的 ColA 值只计算一次:

Col A   Col B   Col C   Col D
Test2   testlast2   ttttt   1         *
Test2   testlast2   ttttt   1
Test4   testlast4   ttttt   1         *
Test5   testlast5   ttttt   1         *
Test6   testlast6   ttttt   -BLANK-
Test7   testlast7   ttttt   -BLANK-
Test7   testlast7   ttttt   1         *
Test7   testlast7   ttttt   1

在上面的示例中,结果应该是4,如星号所示。

我尝试过以下公式:

=SUMPRODUCT((A2:A9<>"")/COUNTIF(A2:A9,A2:A9&"")) 

(返回5)没有成功。

【问题讨论】:

  • 我不知道这是否只是一个错字,但您的A2:A9 范围之一是A24:A9

标签: arrays excel excel-formula worksheet-function countif


【解决方案1】:

试试这个数组公式:

=SUMPRODUCT(IFERROR((D2:D9<>"")/COUNTIFS(D2:D9,"<>",A2:A9,A2:A9&""),0))

Array 公式需要 Ctrl+Shift+Enter 而不是简单的 Enter


这是另一个标准公式版本,它永远不会允许出现#DIV/0!,因此不需要IFERROR

=SUMPRODUCT((D2:D9<>"")/(COUNTIFS(D2:D9,"<>",A2:A9,A2:A9&"")+(D2:D9="")))

【讨论】:

  • @ Tim,数组公式确实适用于实现 6 的结果。但我希望我的输出为 4。条件 1:当 col A 和 B 匹配时,我不想加起来我会考虑一次(即,对于 test2,这里有 2 行并且总和值为 2,但考虑到相同的 Test2 我希望输出为 1)
【解决方案2】:

也许:

=SUMPRODUCT(D2:D9,E2:E9)  

用,在 E2 中向下复制到 E9:

=1*(COUNTIF(A2:A9,A2)=1)

【讨论】:

  • 太棒了,它完全符合我的计算。非常感谢!!!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-05-21
  • 1970-01-01
  • 1970-01-01
  • 2015-05-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多