VBA:计算满足两个条件的唯一值

VBA:计算满足两个条件的唯一值,vba,excel,excel-formula,Vba,Excel,Excel Formula,我有三列:ID、events和month。我需要按ID获得每月唯一的事件数 到目前为止,我使用CountIfs(范围(“B2:B276609”)、EventName、Range(C2:C76602”)、m)按月统计了事件数(例如,5月份有1806次唯一登录) 我如何过滤上述计数,以便只使用该计数中的唯一ID?请注意,我必须通过一系列事件类型和月份来循环此操作 为了更清楚地说明这一点,让我提供一些示例数据: ID Event Month 1 Login May 16 2 click

我有三列:ID、events和month。我需要按ID获得每月唯一的事件数

到目前为止,我使用CountIfs(范围(“B2:B276609”)、EventName、Range(C2:C76602”)、m)按月统计了事件数(例如,5月份有1806次唯一登录)

我如何过滤上述计数,以便只使用该计数中的唯一ID?请注意,我必须通过一系列事件类型和月份来循环此操作

为了更清楚地说明这一点,让我提供一些示例数据:

ID  Event  Month
1   Login  May 16
2   click  July 16
1   Save   June 16
1   Login  May 16
3   Save   June 16
我需要从中获得以下信息:

1 unique login in May 16
2 unique saves in June 16
1 unique click in July 16

根据Ralph评论中的链接,您可以在此处找到:

要知道您有多少独特的物品,可以使用以下常规公式:

=SUM(IF(FREQUENCY(COUNTIF(Colors,"<"&Colors),COUNTIF(Colors,"<"&Colors)),1))

=SUM(IF)FREQUENCY(COUNTIF)Colors,您可以使用Excel的内置函数

ActiveSheet.Range("A2:C76602").RemoveDuplicates Columns:=Array(1,2), Header:=xlYes

此解决方案允许您从表中获取所有唯一值:如果您需要基于两列的唯一值,则可以(1)创建一个组合这两列的帮助器列或(2)在比较值的唯一性之前,请将公式中的列与数组公式相结合。您是否有兴趣在没有vba的情况下执行此操作?如果有,您有什么版本的excel?这是一个简单的聚合SQL查询,可以使用excel vba运行,在当前工作簿上调用ADO。不需要嵌套循环或if/then条件。Ye真不敢相信我没想过要做这个简单的预备步骤。
ActiveSheet.Range("A2:C76602").RemoveDuplicates Columns:=Array(1,2), Header:=xlYes