使用excel中的条件选择最大值

Jam*_*roy 1 excel worksheet-function

我有一个excel的范围与日期和价值观

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

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

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

在这里有任何优秀的人可以帮助我吗?

dev*_*xer 7

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

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

哪里

  • CategoryColumn 是包含您的类别的列(例如,"低","中","高")
  • ValueColumn 是包含您想要获得最大数据的数据的列

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

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

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

此示例检查"类别列"中的值是否为"高".如果是,则将相邻的"值"放入MAX函数中,否则将其置空.这为您提供了所有"高"值的最大值.

PS我不认为img标签在这个网站上有效......看不到你的形象.


Rob*_*rns 6

有三种选择.

我首选的选项是创建一个没有帮助列的数据透视表.

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

创建数据的数据透视表.

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

=YEAR(A2)
Run Code Online (Sandbox Code Playgroud)

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

  • 选项2:使用DMAX功能

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

=YEAR(A2)
Run Code Online (Sandbox Code Playgroud)

然后为每年添加一个公式

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

使用Ctrl-Shift-Enter输入每年的数组公式.

{=MAX(IF(YEAR(A2:A21)=2008,B2:B21))}
Run Code Online (Sandbox Code Playgroud)