Excel:计算连续领先最高天数的公式

Excel:计算连续领先最高天数的公式

3-4-21:我已经编辑了最初的帖子,试图使其更清楚,对于误导性的信息感到抱歉。

我有一个包含梦幻足球联赛结果的电子表格,我正在尝试计算一些统计数据。我目前正在努力计算一个公式来计算连续的每个球队在每个赛季中都处于领先地位。

赛季从 2015-16 赛季一直持续到 2019-20 赛季(目前),参赛球队数量并不固定(有时是 8 支,有时是 10 支),小组数量也不固定(有时是 1 支,有时是 2 支)。在“C”列中,我列出了球队名称(每个赛季的“球队间隔”在“F”列中计算),在“E”列中,我计算了每个赛季每一天的排名(用于排名的每个赛季的间隔在“G”列中计算)。

也许通过以下简化示例,我可以更好地解释自己。第 2 队已连续 11 天(第 1 天至第 11 天)担任领先者,然后又连续 13 天(第 13 天至第 25 天)担任领先者。第 5 队已连续 11 天(第 26 天至第 36 天)担任领先者。在“I”列中,我手动输入了预期的结果。在“J”列中,使用带有 INDIRECT 的可变间隔的部分工作公式,但是它没有考虑团队,并且计算了连续 24 天(第 13 天至第 36 天),而不是分别计算第 2 队的 13 天和第 5 队的 11 天。

=MAX(FREQUENCY(IF(INDIRECT(G2)=1;ROW(INDIRECT(G2)));IF(INDIRECT(G2)>1;ROW(INDIRECT(G2)))))

在此处输入图片描述

看起来只缺少最后一步,我尝试通过在团队间隔列(“F”)的底部添加条件来修改公式,但它不起作用

=MAX(FREQUENCY(IF(INDIRECT(G2)=1;ROW(INDIRECT(G2)));IF(INDIRECT(G2)>1;ROW(INDIRECT(G2));IF(INDIRECT(F2)=C2;ROW(INDIRECT(F2))))))

答案1

我认为我已经找到了一种方法来获取每个团队和赛季的最大连续天数,尽管我不确定它是如何工作的。我遵循了这个帖子在 Stack Overflow 上,并在数组公式中添加了乘法

在此处输入图片描述

=MAX(FREQUENCY(IF(INDIRECT(G2)=1*(INDIRECT(F2)=C2);ROW(INDIRECT(G2)));IF(INDIRECT(G2)>1+(INDIRECT(F2)<>C2);ROW(INDIRECT(G2)))))

但是,当我将公式应用于整个表格(所有赛季、所有球队)时,我必须将上述公式中的“>1”更改为“<1”,否则结果将完全“错误”(不像预期的那样):

=MAX(FREQUENCY(IF(INDIRECT(S2)=1*(INDIRECT(R2)=C2);ROW(INDIRECT(S2)));IF(INDIRECT(S2)<1+(INDIRECT(R2)<>C2);ROW(INDIRECT(S2)))))

虽然它看起来像是有效,但我不明白为什么......

相关内容