如何根据另一列获取Excel中的Min()和Max()?

时间:2011-11-07 07:54:35

标签: excel excel-2007 worksheet-function excel-2010

我有一个excel表,其中包含一些球员信息,球队和年份,从此我想知道一名球员在球队开始的最小年份以及他为球队效力的最高年份。

实施例: -

col 1 (names) Col2(Team)  Col3 (year)   Col 4(team)       Col5(min year)    Col6(max year)
Santosh        XXX         2000           XXX                1999              2001
Santosh        XXX         2001           XXX                1999              2001
Santosh        XXX         1999           XXX                1999              2001 
pavan          YYY         2005           YYY                2005              2007
pavan          YYY         2006           YYY                2005              2007
pavan          YYY         2007           YYY                2005              2007
Santosh        YYY         2005           YYY                2005              2005

Col 4中的输出,Col5 Col6是必需的。请帮忙


以下是整个表格,使用制表符字符而不是空格,用于复制粘贴直接到Excel:您必须转到edit页面这篇文章的内容 - 在Markdown源代码框中,您可以使用正确的制表符字符复制表格。 (在Markdown渲染表单中,单元格分隔制表符空格字符将替换为空格字符。)

<子> <子> col 1 (names) Col2(Team) Col3 (year) Col 4(team) Col5(min year) Col6(max year) Santosh XXX 2000 =B2 =MIN($C$2:$C$8*($A2:$B2=$A$2:$B$8)) =MAX($C$2:$C$8*($A2:$B2=$A$2:$B$8)) Santosh XXX 2001 =B3 =MIN($C$2:$C$8*($A3:$B3=$A$2:$B$8)) =MAX($C$2:$C$8*($A3:$B3=$A$2:$B$8)) Santosh XXX 1999 =B4 =MIN($C$2:$C$8*($A4:$B4=$A$2:$B$8)) =MAX($C$2:$C$8*($A4:$B4=$A$2:$B$8)) pavan YYY 2005 =B5 =MIN($C$2:$C$8*($A5:$B5=$A$2:$B$8)) =MAX($C$2:$C$8*($A5:$B5=$A$2:$B$8)) pavan YYY 2006 =B6 =MIN($C$2:$C$8*($A6:$B6=$A$2:$B$8)) =MAX($C$2:$C$8*($A6:$B6=$A$2:$B$8)) pavan YYY 2007 =B7 =MIN($C$2:$C$8*($A7:$B7=$A$2:$B$8)) =MAX($C$2:$C$8*($A7:$B7=$A$2:$B$8)) Santosh YYY 2005 =B8 =MIN($C$2:$C$8*($A8:$B8=$A$2:$B$8)) =MAX($C$2:$C$8*($A8:$B8=$A$2:$B$8))

2 个答案:

答案 0 :(得分:1)

使用多个公式有很多非常复杂的方法,但这正是数据透视表的用途。

1)选择第1列到第3列中的数据

2)插入数据透视表(最容易将其放在新工作表上)

3)在场地列表中放置一个球员和球队旁边的复选框 - 这就是说你想知道每个球员,以及他们为每个球队效力的球队。所以你不会只看到Santosh在2005年完成,你会看到他在2001年之后休息了一段时间并且回来了一年。

4)要获得最小值和最大值,您现在要将年份拖到“总和值”框中(Sum看起来像希腊语E),并且您希望两次执行此操作。现在你将有两列,它们看起来像是随机数。

5)单击Sum Values框中年份总和旁边的向下箭头,然后选择Value Field Settings。从列表中选择Min

6)单击Sum Values框中Year of Year2旁边的向下箭头,然后选择Value Field Settings。从列表中选择最大

您现在应该拥有此数据集:

Row Labels  Min of Year Max of Year
pavan       2005        2007
    YYY     2005        2007
Santosh     1999        2005
    XXX     1999        2001
    YYY     2005        2005

答案 1 :(得分:0)

这是一个起点。 不幸的是它还没有正常工作。所以有人必须调试它。这个想法是使用 Array Formulas (使用数据数组)。 您必须输入 Ctrl + Shift + 输入然后{ }将出现在您的公式周围。您只需要为第一行(E2:F2)执行此操作 - 然后您可以将它们复制下来。

假设col 1 (names)位于单元格A1中 这是E2:[{1}} { =MIN($C$2:$C$8*($A2:$B2=$A$2:$B$8))的公式(请注意,您无法输入} {花括号,这就是Excel的方式标记数组公式。)

以下是整个表格,仅用于复制粘贴目的:您必须转到此帖子的edit编辑页面 - 在Markdown源代码框中,您可以使用正确的制表符字符复制表格。 (在Markdown渲染表单中,单元格分隔制表符空格字符将替换为空格字符(并且未正确对齐)。)

<子> <子> }