如果相邻的列B符合条件并且不等于第二条件,则计算来自列A的唯一值

这是我的第一篇文章,希望我能清楚地解释这个问题。

假设下面的原始Excel表:

ColumnA ColumnB ColumnC 1 WA 1 EA 1 WB 1 EC 1 ED 1 EE 1 WE 1 EF Count of unique E in ColumnB 5 Count of unique W in ColumnB 3 

任务:

1)在ColumnC中计算唯一值时,计算ColumnB中值为E的唯一值。

2)在ColumnC中计算唯一值时,计算ColumnB中值为W的唯一值,考虑到如果ColumnC中的项目在列B中同时具有E和W,则只应计算上述假设1。 ColumnC中只有ColumnB中只有W的项目应包含在此计数中。

如我的结果所示,列B中具有E的项目的计数是5,这是正确的。 但是,列B中具有W的项目的计数返回3,但它应该只返回1,因为{1,W,B}是ColumnC项B在ColumnB中只有一个W的唯一行。

我已经用于这两个计数的Excel公式如下:

算上E

 =SUM(IF(FREQUENCY(IF($A$2:$A$9="1",IF($B$2:$B$9="E",MATCH($C$2:$C$9,$C$2:$C$9,0))),ROW($C$2:$C$9)-ROW($C$2)+1),1)) 

为W计数

 =SUM(IF(FREQUENCY(IF($A$2:$A$9="1",IF($B$2:$B$9="W",MATCH($C$2:$C$9,$C$2:$C$9,0))),ROW($C$2:$C$9)-ROW($C$2)+1),1)) 

注意公式需要用Ctrl + Shift + Enterinput

如何计算W,并排除列B中具有E和W两列的行?

提前致谢。

尝试使用这个公式:

=SUM(IF(FREQUENCY(IF($A$2:$A$9="1",IF($B$2:$B$9="W",IF(COUNTIFS($A$2:$A$9,1,$B$2:$B$9,"E",$C$2:$C$9,$C$2:$C$9)=0,MATCH($C$2:$C$9,$C$2:$C$9,0)))),ROW($C$2:$C$9)-ROW($C$2)+1),1))

也使用CTRL + SHIFT + ENTER

额外的COUNTIFS函数为您提供了所需的额外function,因为该函数会检查是否存在针对相关列C值的“E”的附加行

…或者一种替代方法是计算列C中的所有不同值(假设列A为1),并且只是减去“E计数”,所以如果“B计数为E”公式在B12使用此数组式

=SUM(IF(FREQUENCY(IF($A$2:$A$9="1",MATCH($C$2:$C$9,$C$2:$C$9,0)),ROW($C$2:$C$9)-ROW($C$2)+1),1))-B12