如何为某些用户统计列中的相同值

我有一个列出现不同的用户和其他出现一个值。 每个用户可以有几个这些值,他们可以重复。 我知道如何在同一列中统计相同的值,但是我需要知道每个用户的相同值的数量。 例如:

USER VALUE User1 100 User1 300 User1 100 User1 200 User1 300 User1 100 User1 100 User1 400 User2 100 User2 100 User2 100 User2 400 User2 100 User2 200 User2 200 

那么它应该看起来像这样:

  USER VALUE COUNT User1 100 4 User1 200 1 User1 300 2 User1 400 1 

和第二个用户一样,等等。

编辑 – 对不起,我误解了我所要做的…我有更多的价值观,虽然我只需要专注于一个值,但显然我必须统计所有这些:所以我需要的是以下内容:

  USER V1 V2 V3 V4 user1 ACAB user2 BDAB user1 AFAC user3 CACD user3 DBAA 

用户1应该出现什么内容

  user1 V1 A 2 B 0 C 0 D 0 V2 A 1 B 0 C 0 D 0 E 0 F 1 V3 A 2 B 0 C 0 D 0 V4 A 0 B 1 C 1 D 0 

任何想法? 无论如何感谢您的帮助!

编辑

根据原始海报的新数据结构添加了下面的新答案。

所以有一些事情必须发生才能使这个工作。 我build议将您的数据范围转换为表格。 它使得易于dynamic的列和值引用。 突出显示您的数据范围,然后按CTRL + T。

现在说你的数据在上面的Cell A1:E6中

表1 = A1:E6 =

 USER V1 V2 V3 V4 user1 ACAB user2 BDAB user1 AFAC user3 CACD user3 DBAA 
  • 在F2单元格中input
  • =IFERROR(INDEX(Table1[USER],MATCH(0,INDEX(COUNTIF($F$1:F1,Table1[USER]),0,0),0)),"-")
  • 这将返回“USER”列中的第一个唯一用户。 为了显示其余的部分,只需拖动下面的F2中的单元格复制公式。
  • 然后在G2单元格中,我做了F2:F4范围的下拉列表,这是所有唯一的用户。
  • 在单元格G3我做了一个下拉列表范围B1:E1,这是所有的头部V1,V2 …
  • 在单元格G4中input
  • =IFERROR(INDEX(INDIRECT("Table1["&$G$3&"]"),MATCH(0,INDEX(COUNTIF($G$3:G3,INDIRECT("Table1["&$G$3&"]")),0,0),0)),"-")
  • 您可以将此公式复制到其下面的单元格中,直到看到“ – ”表示“V1”列没有更多的唯一值
  • 在H4单元格中input
  • =COUNTIFS(Table1[USER],$G$2,INDIRECT("Table1["&$G$3&"]"),G4)

这将会给你看起来像这样的东西…希望它有帮助,

唯一用户唯一值唯一计数2

结束编辑

首先回答…

这是你如何使用单元格公式。

  • A中标题的用户范围:A
  • B:B中标题的值范围
  • 范围A:B按用户和值sorting
  • 在D1:F1中input新的标题,唯一用户,唯一值,用户值计数。
  • 有三个公式,每列一个。
  • D2 = =INDEX(A:A,ROW($F$2)+SUM(F$1:F1))
  • E2 = =INDEX(B:B,ROW($F$2)+SUM(F$1:F1))
  • F2 = =COUNTIFS(A:A,D2,B:B,E2)

有了这三个在第二行,你现在应该能够拖下公式,以填补越来越多的列表显示唯一的用户和他们的独特价值与这些值的计数。 如果公式返回一个零,这意味着你在唯一数据的末尾。

-Scheballs

编辑 – 错字,谢谢杰里

唯一用户唯一值唯一计数

如果你可以使用数据透视表,那么你可以这样做:

  • select范围(例如整个表格)
  • 转到Insert > Insert PivotTable > OK
  • 将“行标签”框中的“ User ,“ Value ”字段和“ Value ”框中的“ Value再次拖动。

经过一些格式化( Report Layout > Tabular FormDo not show subtotals数据透视表菜单的Design窗格中的Do not show subtotals ),你会得到这个:

在这里输入图像说明

然后,您可以复制/粘贴您需要的其他表格以进行更多的数据操作。 您不能直接修改数据透视表中的数据。


如果您已经准备好UserValues表,并且只需要计数,则在单元格C2中使用COUNTIFS

 =COUNTIFS(Sheet1!A:A,Sheet2!A2,Sheet1!B:B,Sheet2!B2) 

此公式假定第一个工作表名为Sheet1并且包含要填写的工作表的工作表名为Sheet2