从数据集中删除行后,如何创建表格公式来更新调整后的得分和排名?

问题描述

我有一个列出球员,排名,得分和调整后得分的数据集。这是示例数据:

enter image description here

相当直接地获得调整后的分数:

=C3/(COUNTIF($B$3:$B$6,"<>"))

或阵列版本:

=ARRAYFORMULA(C3:C/(COUNTIF($B$3:B,"<>")))

当某人从数据集中删除时,该公式可以更新调整后的分数...但是,我还需要更新排名,以便考虑删除。这是发生这种情况后数据的示例:

enter image description here

我能做的最好的事情就是这样复制下来-

'=if(A3="","",(MIN(B$2:B)+COUNTA(A$2:A3)-1))

,但这需要打开迭代计算,我希望不必这样做。我想要一个公式(我想这将需要是一个数组公式,但是我可以看到查询也可能工作)。我只需要确保在A-C列中没有任何内容时就可以从D中删除数据。

解决方法

尝试:

=ARRAYFORMULA(IF(A3:A="",ROW(A1:A)))

enter image description here


更新:

=ARRAYFORMULA(IFNA(VLOOKUP(A3:A,{FILTER(A3:A,A3:A<>""),ROW(INDIRECT("A3:A"&COUNTA(A3:A)+(ROW(A3)-1)))-(ROW(A3)-1)},2,0)))

enter image description here