Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Excel 基于另一列的数据对列值进行分组_Excel - Fatal编程技术网

Excel 基于另一列的数据对列值进行分组

Excel 基于另一列的数据对列值进行分组,excel,Excel,我期待着准备一些报告使用Excel来报告我们的项目的整体状态。这是我们的数据,来自我们的问题管理工具 PRO-10128 Comp1 FAIL PRO-9963 Comp1 FAIL PRO-10167 Comp1 PASS PRO-9965 Comp1 PASS PRO-11541 Comp2 BLOCKED PRO-11536 Comp2 PASS PRO-11539 Comp2 PASS PRO-11518 Comp3 P

我期待着准备一些报告使用Excel来报告我们的项目的整体状态。这是我们的数据,来自我们的问题管理工具

PRO-10128   Comp1   FAIL
PRO-9963    Comp1   FAIL
PRO-10167   Comp1   PASS
PRO-9965    Comp1   PASS
PRO-11541   Comp2   BLOCKED
PRO-11536   Comp2   PASS
PRO-11539   Comp2   PASS
PRO-11518   Comp3   PASS
PRO-11519   Comp3   PASS
根据上述数据,我希望编制以下报告:

Comp    P   F   Blocked
Comp1   2   2   0
Comp2   2   0   1
Comp3   2   0   

尽管我不能完全确定您的局限性,例如您可以进行什么类型的更改,但有两种选择

你可以使用透视表。 向数据中添加列标题。 转换为表格您不必这样做,但这是标准做法

选择数据中的任意单元格,按ctrl+*,按ctrl+t。将打开一个弹出窗口,询问您所选内容是否包含标题。勾选此框

插入数据透视表,选择 Comp列作为行,results列作为列和值。 然后,您只需要从透视表中删除总计行和列。 这位于数据透视表工具“总计”的“设计”选项卡下。使用Excel 2013

如果您不希望透视表中包含“完全通过”和“失败”标题,请在数据表中添加一列,并将公式设置为将其放入表中的原因

=IF([@Test]="Fail","F",IF([@Test]="PASS","P",IF([@Test]="BLOCKED","BLOCKED","")))
要使其进入正确的列顺序,可以在透视表中选择标题并将其拖动到正确的位置

稍微清理一下,以获得你想要的准确外观并完成你的任务


pivot表需要记住的一点是,它们不会自动更新,因此在表发生更改时,您需要单击“刷新”

尽管我不能完全确定您的局限性,例如您可以进行什么类型的更改,但有两种选择

你可以使用透视表。 向数据中添加列标题。 转换为表格您不必这样做,但这是标准做法

选择数据中的任意单元格,按ctrl+*,按ctrl+t。将打开一个弹出窗口,询问您所选内容是否包含标题。勾选此框

插入数据透视表,选择 Comp列作为行,results列作为列和值。 然后,您只需要从透视表中删除总计行和列。 这位于数据透视表工具“总计”的“设计”选项卡下。使用Excel 2013

如果您不希望透视表中包含“完全通过”和“失败”标题,请在数据表中添加一列,并将公式设置为将其放入表中的原因

=IF([@Test]="Fail","F",IF([@Test]="PASS","P",IF([@Test]="BLOCKED","BLOCKED","")))
要使其进入正确的列顺序,可以在透视表中选择标题并将其拖动到正确的位置

稍微清理一下,以获得你想要的准确外观并完成你的任务


pivot表需要记住的一点是,它们不会自动更新,因此在表发生更改时,您需要单击“刷新”

这在透视表中很容易完成。不过应该有一些列标题。现在,让我们把它们称为c1、c2和c3。突出显示所有数据,转到insert=>pivot table。将c2放在行标签中,c3放在列标签中,c3放在值中。有关示例,请参见我随附的图片


这在透视表中很容易完成。不过应该有一些列标题。现在,让我们把它们称为c1、c2和c3。突出显示所有数据,转到insert=>pivot table。将c2放在行标签中,c3放在列标签中,c3放在值中。有关示例,请参见我随附的图片


如果您的数据是静态的,或者您记得在更新后刷新数据透视表,则透视表在这方面非常有用

您可以使用COUNTIFS来克服这些限制

假设数据在A-C列中,在F2中输入此公式,然后复制/粘贴到F2:H4:

=COUNTIFS($B:$B,$E2,$C:$C,F$1)
根据需要添加列标题和行标题:

此公式将B列中的课程与E列中的课程匹配,并将C列中的成绩与第1行中的成绩匹配

当您添加更多数据时,它将自动更新。如果将新课程标题添加到B列,请将其添加到E列,然后向下复制公式

透视表的一个优点是,它们可以快速指出数据集中的错误。但我们可以用这个公式很容易地完成同样的事情:

=IF(SUM(F:H)<COUNTA(B:B),"Check for typos!","")
。。。对于C列,此规则为:

=ISNA(MATCH(C1,F$1:H$1,0))
示例:用字母El代替数字1,用零代替Oh:


如果您的数据是静态的,或者您记得在更新后刷新数据透视表,则透视表在这方面非常有用

您可以使用COUNTIFS来克服这些限制

假设数据在A-C列中,在F2中输入此公式,然后复制/粘贴到F2:H4:

=COUNTIFS($B:$B,$E2,$C:$C,F$1)
根据需要添加列标题和行标题:

此公式将B列中的课程与E列中的课程匹配,并将C列中的成绩与第1行中的成绩匹配

当您添加更多数据时,它将自动更新。如果将新课程标题添加到B列,请将其添加到E列,然后向下复制公式

透视表的一个优点是,它们可以快速指出数据集中的错误。但我们可以用这个公式很容易地完成同样的事情:

=IF(SUM(F:H)<COUNTA(B:B),"Check for typos!","")
。。。对于C列,此规则为:

=ISNA(MATCH(C1,F$1:H$1,0))
示例:使用了le tter El代替数字1,并使用零代替Oh:


你试过透视表吗?你试过透视表吗?非常感谢。正是我所需要的汉克斯。正是我需要的