动态计算值的出现次数

时间:2015-12-31 13:44:22

标签: excel

我不确定我是否正确地提出了这个问题...但是,我有一个电子表格,可以通过“交易日期”导入数据'在第1天可能有15笔交易,第2天可能有30笔交易等。

现在我已经有了一个计算每天导入MANY的公式

=SUMPRODUCT((MONTH('Further Evidence'!$A$2:$A$5000)=MONTH(DATEVALUE(Configuration!H2&" 1")))*('Further Evidence'!$A$2:$A$5000<>""))

这表明在那个特定月份有多少人来了,我现在需要解决的是那个月的最高摄入量(如果可能的话,是哪一天)。

有没有一种直观的方式来计算列表中存在的值,而不是列出一年中365天并在其旁边的每个单元格中执行countif?

对于你们中的一个人来说这很简单,但我无法弄明白或者谷歌的内容:)

编辑 -

=MAX(FREQUENCY('New Appeals'!A2:A5000,MONTH('New Appeals'!A2:A5000)))

这适用于整个日期列表,但是如何让它专门检查几个月或确定具体日期?

1 个答案:

答案 0 :(得分:2)

要查找给定月份内的最大值,您可以使用如下所示的数组公式

我使用了第36到48行的示例范围。我假设日期在第一列,而且交易在第J列

=MAX(IF(TEXT($I$36:$I$48, "mmm")="jan", $J$36:$J$48, ""))

(要输入数组公式,您必须在单元格中按ctrl + shift + enter)

这会将MAX功能限制为jan月份。

然后,您可以使用另一个数组公式找到与此最大值关联的日期,该公式是第一个MATCH然后INDEX的混合。 MATCH首先查找与给定月份关联的单元格范围内的最大值,然后返回此位置。然后在INDEX中使用此职位返回日期

=INDEX($I$36:$I$48, MATCH(K34, IF(TEXT($I$36:$I$48, "mmm")="jan", $J$36:$J$48, "")))

请注意,如果您在一个月内有两天具有相同的最大值,那么它只会带回第一个

希望这有帮助