Excel,如何从另一列中查找给定值的最高列值

时间:2013-02-26 15:16:29

标签: excel pivot-table

国家倡议1倡议2倡议n周

国家1状态1状态1状态1 1

国家2状态2状态2状态2 1

国家1状态3状态2状态1 2

国家2状态3状态2状态2 2

我有一个excel文件,我收集每个国家/地区的计划状态,每周收集一次(有主动评估历史记录) 我想构建一个数据透视表来按国家显示当前的主动状态,但是在这个表结构中(我不能改变结构只能在excel中进行修改)我不能这样做(或者我不知道如何)因为使用了启动作为标题。

所以我想将表转换成这种结构:

倡议状态国家周

倡议1状态1国家1 1

倡议1状态2国家2 2

是否有可能 - 我认为转置excel功能不会做我想要的。

我想在计划列中列出所有计划,然后在列状态中显示每个国家/地区的最高状态

所以我需要一个函数来查看Initiative列并获得给定国家的最高状态。

任何帮助表示赞赏

2 个答案:

答案 0 :(得分:1)

您可以使用数组公式。它可能不是最好的解决方案,但它会特别解决你的问题。你所做的是,不是为每一行制作一个公式,而是每个行公式都有一个公式。自己尝试一下会更容易。

假设您的国家/地区名称位于A列中,而B列中的计划位于列中。您的数组公式看起来像

= MAX(IF((A:A)=“CountryName”;(B:B); 0))

这意味着如果A中的行值等于您正在查看的国家/地区的名称,则公式将添加列B的值,即计划。然后它将继续到下一行并为此做同样的事情。完成搜索后,它将显示提取行的最高值。您可以为每个国家/地区重复此操作,但我建议您只需使用新工作表,在列中记下所有可能的国家/地区名称,并将=“CountryName”替换为对该单元格的引用。

编辑:重要的是,当你完成公式编写后,你必须按Ctrl + Shift + Enter,否则excel将无法理解它是一个数组公式。

答案 1 :(得分:0)

使用数据透视表,您可以将数据库中的列标签用作数据透视表中的行标签。

选择数据库时,请确保选择所有现有数据,包括列的标签(国家/地区,计划,周等)。然后,当您选择创建数据透视表时,可以选择过滤器,列标签,行标签和值。如果您将计划作为行标签,则可以执行此操作。另一种方法是使用过滤器功能/功能区,它允许您同时从多个列上的多个方法中进行排序。