在excel里,用函数提取工资前三名和后三名,要显示姓名和工资数.谢谢老师指点!

我想用函数在sheet1里相对印的单元格里显示sheet2里的前三名和后三名的姓名和工资数。谢谢老师!

在工作表Sheet1的C3单元格中输入公式
=LARGE(Sheet2!B:B,ROW(A1))
在B3中输入

=INDEX(A:A,MATCH(C3,Sheet2!B:B,))
在E3中输入

=SMALL(Sheet2!B:B,ROW(A1))
D3中输入
=INDEX(A:A,MATCH(E3,Sheet2!B:B,))
选定B3:E3后下拉填充追问

非常感谢你耐心的解答!谢谢!但是结果是这样的

追答

抱歉,公式前面的引用区域少了工作表名称【Sheet2!】
第二个公式与第四个公式应分别为

=INDEX(Sheet2!A:A,MATCH(C3,Sheet2!B:B,))

=INDEX(Sheet2!A:A,MATCH(E3,Sheet2!B:B,))

追问

老师:麻烦你指正:实际排名与公式排名不一致,谢谢!

温馨提示:内容为网友见解,仅供参考
第1个回答  2016-09-21
需不需要考虑工资相同时,怎么处理?追问

需要考虑的,谢谢!

追答

采纳之前,请你验证一下其他知友的答案是否可以解决工资相同的问题。

请看附件中的公式。可以解决同值排名问题。

追问

谢谢你!你写出的工资栏的公式是正确的。谢谢!但姓名栏为0值。

追答

你没看我的附件,怎么知道错了?数组公式要ctrl+shift+回车

第2个回答  2016-09-21
工资变成绩了?追答

工资公式:
=LARGE(B2:B14,ROW(A1))
向下拖动填充

追问

不行啊。变为0值了

追答

上面公式B2:B14前面加上引用的表名

姓名公式:
=VLOOKUP(C3,IF({1,0},表1!B2:B14,表1!A2:A14),2,)

姓名公式:
=VLOOKUP(C3,IF({1,0},表1!$B$2:$B$14,表1!$A$2:$A$14),2,)
向下拖动

追问

你好,先谢谢!输入后结果是这样的:

追答

你那个表名真的是"表1"吗?

给你的公式是原理,不是让你找抄的,我这手机弄的,只能输个大概公式,要是在电脑上我就给你截图示意了。

追问

喔。原来是这样,是我太笨了,实在是不好意思。非常谢谢你!虽然现在还没有成功!我对函数只是知道一点点,对于公式设置我是个外行,我现在还只能照做、照搬公式。

追答

弹出窗口的意思就是找不到表1,把你的表名截图看看

不用了,我看到了是sheet2

你两个表还不在一个工作簿?

那还得加工作簿名

追问

您好:老师,两个表是在一个工作薄,sheet1是搜索表(前三名和后三名),sheet2是数据表。表名为:表一

追答

sheet2就是表名

把公式里表1改成sheet2就行了

本回答被提问者采纳
相似回答