Excel跨多个范围的产品和COUNT结果

时间:2012-03-30 15:26:59

标签: excel count sum excel-formula

我想计算两个日期之间一系列数字的出现次数,并且有很大的困难

在一个工作簿上,我们有一个数据显示事件发生的日期以及托管该事件的人的ID。

然后我们想要计算另一个的总数。

要获取特定用户ID组的日期发生的事件总数,我们在A和B列中有一个包含两个日期的工作簿,并且此公式为:

=SUMPRODUCT(('[DATABASE 1.xlsx]Sheet1'!$AB$3:$AB$71692>=A3)*('[DATABASE 1.xlsx]Sheet1'!$AB$3:$AB$71692<=B3)*('[DATABASE 1.xlsx]Sheet1'!$AC$3:$AC$71692>=548)*('[DATABASE 1.xlsx]Sheet1'!$AC$3:$AC$71692>=554)

这给出了这两个日期之间这组用户的事件总数。

在第二栏中,我们想知道此组中出现在当天任何事件的人数。基本上我们想要计算在这两个日期之间输入记录的548和554之间用户ID唯一的数字。

如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

试试这个“数组公式”

=SUM(ISNUMBER(MATCH({548,549,550,551,552,553,554},IF(('[DATABASE 1.xlsx]Sheet1'!$AB$3:$AB$71692>=A3)*('[DATABASE 1.xlsx]Sheet1'!$AB$3:$AB$71692<=B3),'[DATABASE 1.xlsx]Sheet1'!$AC$3:$AC$71692),0))+0)

使用CTRL + SHIFT + ENTER确认

对于范围大于548 to 554的范围,例如500 to 600更改为此版本:

=SUM(ISNUMBER(MATCH(ROW(INDIRECT("500:600")),IF(('[DATABASE 1.xlsx]Sheet1'!$AB$3:$AB$71692>=A3)*('[DATABASE 1.xlsx]Sheet1'!$AB$3:$AB$71692<=B3),'[DATABASE 1.xlsx]Sheet1'!$AC$3:$AC$71692),0))+0)