【问题标题】:How to return a value in a column which has the maximal sum in another column?如何在另一列中具有最大总和的列中返回一个值?
【发布时间】:2012-03-01 09:00:40
【问题描述】:
    A       B
1   #       $   
2   1001    10  
3   1003    20  
4   1004    10  
5   1001    20  
6   1001    10  
7   1005    20  
8   1003    10  
9   1004    20  

我想要 A 列中的 #,其在 B 列中具有最大 $ 总和,并且我想要单元格 A11 中的结果

结果应该是 1001

感谢一百万的任何贡献!

【问题讨论】:

  • 您有几行具有最大值(在您的示例中为20),所以我看不出我们将如何返回1001

标签: excel sum formula excel-formula


【解决方案1】:

我假设答案是 1001,因为考虑到数据中的所有条目,1001 的总数最高 (40)。要获得该结果,请使用此“数组公式”

=INDEX(A2:A9,MATCH(MAX(SUMIF(A2:A9,A2:A9,B2:B9)),SUMIF(A2:A9,A2:A9,B2:B9),0))

与CTRL+SHIFT+ENTER确认

如果您想避免使用类似的复杂数组公式,请使用辅助列,即在 C2 中复制下来

=SUMIF(A$2:A$9,A2,B$2:B$9)

那么你的最终结果

=INDEX(A2:A9,MATCH(MAX(C2:C9),C2:C9,0))

【讨论】:

  • 对 OPs 问题的理解很好:) 和往常一样非常好的公式(和 +1)
  • 非常感谢!巴里胡迪尼!又是你救我)
【解决方案2】:

这是第一次尝试:

{=MIN(IF(B2:B9=MAX(B2:B9),A2:A9,MAX(A2:A9)))}

这是一个数组公式,您必须使用 Ctrl+Shift+Enter

进行验证

此公式将返回与 B 列中 $ 的最大值相对应的 # 的最小值。
我选择返回 # 的最小值以返回 1001,如您的问题中所述作为预期输出。

【讨论】:

  • 谢谢你,JMax!很抱歉,但在我的笔记本电脑上它返回了#NAME?
  • 对不起,我忘了把英文版的SI翻译成IF。这主要是为了记录,因为巴里已经找到了一个好的解决方案:)
猜你喜欢
  • 2021-10-16
  • 1970-01-01
  • 1970-01-01
  • 2020-11-17
  • 1970-01-01
  • 1970-01-01
  • 2022-01-05
  • 1970-01-01
  • 2013-06-21
相关资源
最近更新 更多