将重复计为一个

时间:2015-01-13 11:39:59

标签: excel duplicates

您好,我需要帮助,如何在Excel中制作公式。

我有3个系统系统S101,S102,S103。系统S101的最新版本是rev。 02及其接受。系统S102和S103都被拒绝。系统S101 Rev. 00和Rev. 01不应包含在拒绝计数中,因为Rev. 02已被接受。所以我需要一个像REJECTED = 2和Accepted = 1的输出。

系统修订-状态

S101-00-REJECTED

S101-01-REJECTED

S101-02-ACCEPTED

S102-00-REJECTED

S103-00-REJECTED

OUTPUT:ACCEPTED = 2 REJECTED = 1

2 个答案:

答案 0 :(得分:0)

假设您的Excel文件如下所示:

Excel file

在单元格B11和C11中,我使用以下函数计算A11中给出的指定系统编号的修订列中的最大值。

B11=MAX(IF(A2:A6=A11;IF(C2:C6=B10;B2:B6)))
C11=MAX(IF(A2:A6=A11;IF(C2:C6=C10;B2:B6)))

请务必使用CTRL + SHIFT + ENTER输入函数,因为它们是数组函数。

MAX函数中的IF函数确保您只返回列B中的行,其中列A和C符合条件(系统编号和已接受/已拒绝)。

编辑:因为真正的问题似乎不清楚;如果需要Count;而不是简单地替换MAX

COUNT

编辑2 已修复==拼写错误

答案 1 :(得分:-3)

我觉得有一种更简单的方法,但同时,假设您希望2的{​​{1}}计数为Rejected s System和{{ 1}}并假设状态位于S102且没有空白行:

添加辅助列(例如D,标记为S103),其中包含:

C1

复制到西装。从所有四列创建数据透视表,其中SR表示ROWS,最大值=A2&B2 表示Sigma VALUES。假设PT在F:G中从Row1开始,添加:

System
在H2中

并复制以适应。在I2:

Revision
在I3中

 =INDEX(C:C,MATCH(F2&G2,D:D,0))  

或将公式中的H2和H3更改为“已接受”和“已拒绝”。

在图像中,我在I1和I2中添加了标签:

SO279221318 example

这会计算系统的最新状态,而不是=COUNTIF(H:H,H2) 修订,对于=COUNTIF(H:H,H3) (2)来说,这可以简单地实现:< / p>

S101

和Accepted(1):

REJECTED