根据不同列中的前5个值从Excel中的单元格提取值

假设列A有十个名字,列B有十个值。 我需要具有五个最高列B值的人员的姓名,以便在不同的工作表上填充。 我将如何做到这一点? 如果我想要最低的价值呢?

你也可以使用vlookup来达到相同的效果,但是因为你的lookup value出现在lookup value的列之前,所以你需要使用choose函数来解决这个问题:
总是使用相同的示例表

在这里输入图像说明
把这个公式在C2中拉到前5:

 =VLOOKUP(LARGE($B$2:$B$99,ROW(1:1)),CHOOSE({2\1},$A$2:$A$99,$B$2:$B$99),2,0) 

并把它放在D2拉低5:

 =VLOOKUP(SMALL($B$2:$B$99,ROW(1:1)),CHOOSE({2\1},$A$2:$A$99,$B$2:$B$99),2,0) 

希望这个作品也是如此。

你可以使用index matchfunction来实现这一点:

在这里输入图像说明

鉴于上面的例子表:

公式拉顶5,把这个在C2

 =INDEX($A$2:$A$99,MATCH(1,INDEX(($B$2:$B$99=LARGE($B$2:$B$99,ROWS(C$1:C1)))*(COUNTIF(C$1:C1,$A$2:$A$99)=0),),0)) 

拉低5的公式,把这个放在D2

 =INDEX($A$2:$A$99,MATCH(1,INDEX(($B$2:$B$99=SMALL($B$2:$B$99,ROWS(D$1:D1)))*(COUNTIF(D$1:D1,$A$2:$A$99)=0),),0)) 

对于这两个,拖动和填充5行(因为你想顶/低5)。 你可以拖曳/填充尽可能多的。
您可以通过将$ A $ 99和$ B $ 99更改为任意数量的行来适应您的列的长度。
告诉我,如果它适合你。