VBA:根据第二列中的出现次数查找一列中的出现次数

时间:2019-01-30 08:07:52

标签: excel vba countif find-occurrences

我需要找出一种方法,根据数字与A列中的值匹配,来计算B列中出现的次数。

示例:

/* for MM/dd/yyyy */
 regex = /^(0[1-9]|1[0-2])\/(0[1-9]|1\d|2\d|3[01])\/(19|20)\d{2}$/ 
/* for dd-mon-yyyy */
 regex = [0-9]{1,2}-[a-zA-Z]{3}-[0-9]{4} 

因此在此示例中,我需要计算

Column A Column B 2172223333 2172245555 2172223333 2172245555 2172234444 2172245555 2172234444 2172245555 2172285544 2172245555 相对于2172245555出现2次

2172223333相对于2172245555出现2次

2172234444相对于2172245555出现1次

有什么建议吗?

2 个答案:

答案 0 :(得分:1)

只需在C列中使用以下公式

=COUNTIFS(A:A,A:A,B:B,B:B)

获取组合的出现。

enter image description here


或者您可以在单元格C2中使用

=COUNTIFS(A:A,A2,B:B,B2)

…并复制下来。


编辑以在下面证明我的评论: enter image description here 在这里看到最后一行。 2172223333发生了,但是该组合仅计算A列和B列的组合的出现次数。

答案 1 :(得分:0)

您还可以使用连接列A和列B的帮助列。这将创建一个复合键,然后您可以在CountIf函数中使用它,如下所示:

enter image description here

  • C列公式:=A2&B2
  • D列公式:=COUNTIF($C$2:$C6,$C2)
  • E列公式:=COUNTIF($C$2:$C2,$C2)

注意::我为踢球添加了运行计数列(E列),因此它不是必需的,只是将来可能要退出的另一种选择。