在excel中对数据进行排名而不会跳过排名

时间:2014-07-02 13:35:04

标签: excel vba excel-vba

我有超过5000个订单项的数据集。我需要根据各种参数计算排名。目前我正在使用公式排名{=SUM(IFERROR(1/COUNTIF(H$5:H$194,IF(H$5:H$194<H5,H$5:H$194)),0))+1}

但是,由于数据集规模较大,效率非常低,需要数小时才能运行。任何人都可以为此建议任何替代代码吗?

示例:

如果给出分数,我希望排名显示在Rank Column

Score Rank 88 9 7 2 45 6 23 5 2 1 56 7 7 2 98 10 12 3 45 6 23 5 56 7 86 8 19 4

1 个答案:

答案 0 :(得分:0)

是的,您可以将整个表放入数据透视表中,然后保持按值排序的pivottable,旁边有一个序列号列。然后运行

=VLOOKUP(...)

在数据透视表值上,并拉入序列号列以进行排名。

有点令人费解,但比等待几个小时更好。