你可以使用下面的语法在Google表中按多列排列项目:
=RANK(B2,$B$2:$B$11)+SUMPRODUCT(--($B$2:$B$11=$B2),--(C2<$C$2:$C$11))
这个特殊的公式将项目按降序排列,首先按B列的值,然后按C列的值。
下面的例子说明了如何在实践中使用这个公式。
例子:在Google表中按多列排列项目
假设我们在谷歌表格中有以下数据集,显示了10个不同篮球运动员的得分和助攻:

现在假设我们想把这些球员从最好的到最差的进行排名,给最好的球员分配一个 "1 "的值,给最差的球员分配一个 "10 "的值。
我们将根据 "点数"一栏中的数值,从最佳到最差对这些球员进行排名。如果出现平局,我们将参考助攻栏中的数值。
我们将使用以下公式对球员进行排名:
=RANK(B2,$B$2:$B$11)+SUMPRODUCT(--($B$2:$B$11=$B2),--(C2<$C$2:$C$11))
下面的截图显示了如何在实践中使用这个公式:

排名为1的球员被认为是最好的,排名为10的球员被认为是最差的。
以下是我们的公式是如何运作的:
- 根据积分栏中的数值,将球员从最佳到最差进行排名
- 如果出现平局,则参考助攻栏中的数值
例如,球员A和B因拥有最多的得分而并列。然而,球员A有更多的助攻,所以他们得到的排名是1,球员B得到的排名是2。
请注意,任何在得分和助攻方面有相同价值的球员(如球员E和F)都得到了相同的排名。
如果你想按升序排列球员(1=最差,10=最佳),那么我们可以使用以下公式:
=RANK(B2,$B$2:$B$11, 1)+SUMPRODUCT(--($B$2:$B$11=$B2),--(C2<$C$2:$C$11))+1
下面的截图显示了如何在实践中使用这个公式:

现在 "最佳 "球员的排名是10,"最差 "球员的排名是1。
其他资源
下面的教程解释了如何在Google Sheets中进行其他常见的操作:
谷歌表格如何对包含文本的单元格进行过滤
Google Sheets如何使用多列的SUMIF
Google Sheets如何在多个表单中求和