Excel删除重复并获得计数

时间:2017-03-31 07:10:25

标签: excel excel-vba vba

我有45k数据的数据表。以下格式。我需要做的是从个别号码和显示中获得前3个计数。

e.g。如果您参加61406142526,您应该只计算前3个内容。

Number          Content

61406142526 DEW 858

61406142526 DEW 858

61406142526 DEW 858

61406142526 DEW 858

61410140808 DEW 10

61410140808 DEW 9

61410545997 DEW 10

结束显示应为

**DEV 858  = 3**

**DEV 10   = 2**

**DEV  9   = 1**

因为我是VBA的新手,所以任何人都可以指导我这样做。

1 个答案:

答案 0 :(得分:0)

无需使用VBA。您可以按this way获取唯一列表。因此,当您的号码位于A2:A8且内容位于B2:B8时,请先分别在C2:C8D2:D8获取唯一列表。

  • C2:C8{=IFERROR(INDEX($A$2:$A$8, MATCH(0, COUNTIF($C$1:C1, $A$2:$A$8), 0)),0)}
  • D2:D8{=IFERROR(INDEX($B$2:$B$8, MATCH(0, COUNTIF($D$1:D1, $B$2:$B$8), 0)),0)}

现在,您可以按n公式获取large()个最大数字。因此,当F2:F4{1; 2; 3}时,您可以获得=LARGE($C$2:$C$8,$F2)之后的第一大数字。假设这是G2,然后向下拖动到G3:G4,您现在获得了第二和第三大数字。

现在,您可以在C2:C8搜索这些数字,并在D2:D8检索相应的内容。通常可以使用index() & match()公式。因此,请在=INDEX($D$2:$D$8, MATCH($G2,$C$2:$C$8,0))键入H2,然后向下拖动到H3:H4。成品。示例文件为here

enter image description here