Excel:根据第三个标准,仅重复一次重复计数


1

所以我得到了一份excel表,其中列出了(除其他事项外)组织和他们活跃的年份。一些组织每年活跃一次以上。它看起来像这样:

年 - 组织

2015 --- Orga A
2015 --- Orga A
2015 --- Orga B
2014 --- Orga C
2014 --- Orga C
2013 --- Orga D
2013 --- Orga D

我正在试图找出一个公式,它会给我每年活跃的独特组织数量(例如:2015年2个,2014年1个,2013年1个)。

我尝试过:我在C中创建了一个新列,并在每一行中输入了这个公式:

=COUNTIF($B$2:B*X*,B*X*)=1

X = 2(B2),在第一行,并且每行增加1(例如B2,B3,B4)无论是第一次组织是否活动(如是/否),都将输出。

有了这个,我就可以创建一个简单的COUNTIF公式来计算组织活跃的数字。然而,问题在于,这是指该组织是否在所有年份中不止一次活跃,而不是每一年。

每年编写上述功能不是一种选择,因为表格应该是“自我维持”的,因为它是一个需要适应未来年份的持续列表。

我觉得这可以通过数组公式和IF函数来解决,但我不确定如何...任何输入都会非常感激!(:


你可以完全使用PIVOT TABLE!
Raystafarian 2015年

怎么会这样?如果我使用数据透视表的计数功能,我不会消除重复。
Kilian 2015年

您是否尝试过删除重复项?
凯尔2015年

不,我怎么能特意使用它?
Kilian 2015年

Answers:


0

我发现很奇怪没有人回答这个......好吧,我会试试的。

好吧,如果您不喜欢数据透视表,我可以建议您使用几种不使用它们的解决方案。

第一种方式

先决条件是您拥有所有可能的组织名称列表以及要检查活动的唯一组织数量的所有年份的列表。

例

在我展示的示例中,我将您的列表放在A列(范围A1:A7)中,该范围内的可能组织名称列表C2:C5以及2013年至2015年D1F1单元格列表。

现在你有了这个,你可以按照以下步骤获得你需要知道的东西:

  1. D2put =IF(IFERROR(MATCH(CONCATENATE(D$1," --- ",$C2),$A$1:$A$7,0),0)>0,1,0) 然后复制公式直到F5。这将创建0和1的网格,其中1表示组织在参考年份中处于活动状态,0表示不是。

  2. 然后,所有你需要做的仅仅是正从d到F的6行总和(简单地说=SUM(D2:D5)D6,然后复制公式至F6)。

否则,如果您不需要或不需要网格,您可以使用CSE /数组公式(可以在我的另一个答案中找到一些链接以了解更多关于它们的信息)。

在这个例子中,在D7我写的=SUM(IF(IFERROR(MATCH(CONCATENATE(D$1," --- ",$C2:$C5),$A$1:$A$7,0),0)>0,1,0))时候按了ctrl+ shift+ enter并复制了公式直到F7(请注意,在这种情况下,步骤1和2根本不需要获得所需的结果。)

第二种方式

最后,如果您无法轻松获得所有组织的列表,假设您只能编译您有兴趣检查的年份列表,则可能的解决方案如下:

  1. 选择所有数据范围(在我的示例中A1:A7)并转到“数据”集并选择“删除重复项”。

Excel数据删除重复项

在这个例子中,只剩下4行,它们将是唯一的组合year --- organization name删除重复项如何工作的一个例子)所以现在我们可以简单地“计算”一年中剩余行数据范围中出现的次数。删除重复项后剩余的行数并不重要,因为我们将整个A列视为数据范围。

  1. 因此,在删除重复项之后,剩下要做的就是使用公式(例如in D8然后复制到F8=COUNTIF($A:$A,CONCATENATE(D$1," --- *")) (只需注意公式中的星号是Excel通配符,可以找到一些链接以了解更多关于它们的信息)我之前提到的其他答案

就是这样。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.