excel从A表中筛选出前十数据并自动填写到B表并排序

请问在B表中使用什么函数,可以把A表中的“原数据”自动求和并按序排列到B表,最终结果得到B表,请注意我要自动填写,当我更改A表数据的时候,B表会自动发生变化。谢谢
请注意,我虚要从原数据表中 自动选出合计排名前三的“原数据”填写到B表中,我知道“数量”可以使用函数 sumif获得,但是“原数据”这一列怎么自动填写呢?

假设A列在SHEET1,下表公式:

A2公式:
=IFERROR(RANK(C2,C:C),"")
下拉;

B2公式:
=IFERROR(INDEX(Sheet1!A$2:A$1000,SMALL(IF(MATCH(Sheet1!A$2:A$1000&"",Sheet1!A$2:A$1000&"",)=ROW($1:$999),ROW($1:$999),9^9),ROW(A1)))&"","")
数组公式,按三键(CTRL+SHIFT+回车)完成公式,下拉;

C2公式:
=IF(B2="","",SUMIF(Sheet1!A:A,B2,Sheet1!B:B))
下拉。追问

b列并没有按照C列的大小排序

追答

是的,只是按顺序提取的。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-05-26
用函数可以实现自动统计,自动排序的话,光用函数,貌似比较难,用VBA倒是没问题,我想想函数可以不
第2个回答  2016-05-26
使用SUMIF函数就可以实现你要的功能。追问

但是并不能自动填写 ACDB 到B表

追答

你可以用LARGE函数得到最大的是哪一个,INDEX或者CHOOSE出对应的项目就可以了。

追问

请尝试给出公式 谢谢

追答

请提供表格,没有任何行列标注,无法写出公式,谢谢!

相似回答