Excel 将惩罚列应用于排名的公式
Excel formula to apply penalty column to ranking
我对此进行了长期而艰苦的思考,但我找不到解决我认为非常简单的问题的方法。
我有一个 table 的结果,有时会有人受到不同金额的惩罚。这被输入到惩罚栏(Col C)。
我需要一个公式来检查是否有条目进入惩罚列并将其应用,不仅适用于该行,还适用于受影响的后续行数,具体取决于严重程度处罚.
我尝试通过参考对 'ROW()' 函数的惩罚来查看是否可行,但未能达到预期的效果。
Col D 显示公式的所需输出。
列 E 仅供参考,以显示每一行的预期效果。
Col A Col B Col C Col D Col E
Pos Name Penalty New Pos Change
1 Jack 1 0
2 Matt 2 0
3 Daniel 2 5 +2
4 Gordon 3 -1
5 Phillip 4 -1
6 Günther 6 0
7 Johann 3 10 +3
8 Alain 7 -1
9 John 8 -1
10 Gianmaria 9 -1
最大的问题是,如果某人被判大罚,例如“10”,那么它会影响以下十行。我不知道如何包含这个变量逻辑...
我很想听听其他人的方法...
您需要使用 RANK() 函数:
在一个新的列中,将惩罚值添加到原始位置,再加上一个取决于原始位置的小系数(每增量可能为 0.01),以将受罚球员移动到该位置的原始人下方,然后在下一列你可以对新的值列进行 RANK()(在我的例子中是 F)。
因此新值为 =A2+(IF(C2>0,C2+(0.01*A2)))
然后排名 =RANK(F2,F2:F11,1)
你可以把所有的功能合二为一,但是一开始分栏来做会更清楚。
我对此进行了长期而艰苦的思考,但我找不到解决我认为非常简单的问题的方法。
我有一个 table 的结果,有时会有人受到不同金额的惩罚。这被输入到惩罚栏(Col C)。
我需要一个公式来检查是否有条目进入惩罚列并将其应用,不仅适用于该行,还适用于受影响的后续行数,具体取决于严重程度处罚.
我尝试通过参考对 'ROW()' 函数的惩罚来查看是否可行,但未能达到预期的效果。
Col D 显示公式的所需输出。
列 E 仅供参考,以显示每一行的预期效果。
Col A Col B Col C Col D Col E
Pos Name Penalty New Pos Change
1 Jack 1 0
2 Matt 2 0
3 Daniel 2 5 +2
4 Gordon 3 -1
5 Phillip 4 -1
6 Günther 6 0
7 Johann 3 10 +3
8 Alain 7 -1
9 John 8 -1
10 Gianmaria 9 -1
最大的问题是,如果某人被判大罚,例如“10”,那么它会影响以下十行。我不知道如何包含这个变量逻辑...
我很想听听其他人的方法...
您需要使用 RANK() 函数:
在一个新的列中,将惩罚值添加到原始位置,再加上一个取决于原始位置的小系数(每增量可能为 0.01),以将受罚球员移动到该位置的原始人下方,然后在下一列你可以对新的值列进行 RANK()(在我的例子中是 F)。
因此新值为 =A2+(IF(C2>0,C2+(0.01*A2)))
然后排名 =RANK(F2,F2:F11,1)
你可以把所有的功能合二为一,但是一开始分栏来做会更清楚。