【问题标题】:Selecting the max with a condition in excel在excel中选择带有条件的最大值
【发布时间】:2009-08-13 21:45:36
【问题描述】:

我在 Excel 中有一个包含日期和值的范围

http://lh4.ggpht.com/_i-hI_3gfy08/SoSIopeZUZI/AAAAAAAABEk/KjFnq57VTUc/table.png 编辑:添加图片

我想从每年的 HIGH 列中选择 MAX 值(2009 年将返回 404,2008 年将返回 390)

我做过类似的事情,但它使用的是 SUMIF,而不是 MAX。

这里有什么优秀的人可以帮助我吗?

【问题讨论】:

    标签: excel worksheet-function


    【解决方案1】:

    SUMIF 在 Excel 中的等价物是这样的:

    {=MAX(IF(CategoryColumn="High",ValueColumn,"")}

    在哪里

    • CategoryColumn 是包含您的类别的列(例如,“低”、“中”、“高”)
    • ValueColumn 是包含要获取最大值的数据的列

    注意:这是一个数组公式,因此您在输入此公式时必须按Ctrl-Shift-Enter,而不仅仅是Enter。另外,实际上不要输入大括号{}。大括号会自动显示,表示您已输入数组公式。

    注意 2:您实际上可以命名一系列数据。例如,选择范围A1:A20。右键单击并选择“命名范围...”因此,对于本示例,您可以选择类别列并将其命名为 CategoryColumn。与ValueColumn 相同。

    数组公式允许您对整个数据范围执行IF 语句和其他函数,而不仅仅是单个值。

    此示例检查“类别列”中的值是否为“高”。如果是,则将相邻的“值”放入MAX 函数中,否则放入空白。这会为您提供所有“高”值中的最大值。

    附:我认为 img 标记在此站点上不起作用...看不到您的图像。

    【讨论】:

    • 这些笔记真的很有帮助。谢谢!
    【解决方案2】:

    提供三个选项。

    我的首选选项是创建没有辅助列的数据透视表。

    • 选项 1:使用数据透视表

    为您的数据创建一个数据透视表。

    将行设置为日期字段并按年份分组。 或者,可以通过添加具有此公式的列来使用“年份”辅助列。

    =YEAR(A2)
    

    将数据透视表的数据项值部分设置为“高”字段的 MAX

    • 选项 2: 使用 DMAX 功能

    使用公式添加标题为 year 的帮助列

    =YEAR(A2)
    

    然后为每一年添加一个公式

    =DMAX(A1:C21,"High",F13:F14)
    
    • 选项 3:使用数组公式

    使用 Ctrl-Shift-Enter 键为每年输入一个数组公式。

    {=MAX(IF(YEAR(A2:A21)=2008,B2:B21))}
    

    【讨论】:

    • 此答案上的图片已过期
    猜你喜欢
    • 2011-10-03
    • 1970-01-01
    • 2021-03-26
    • 2015-10-11
    • 2015-11-04
    • 1970-01-01
    • 1970-01-01
    • 2021-12-22
    • 1970-01-01
    相关资源
    最近更新 更多