在一组数据中统计单项排名第一的人员名单,如果用函数,我们需要考虑不同项目业绩相等的查找问题,需要考虑同项目业绩相等的查找问题。但如果用数据透视表加筛选,一切就很简单了。最后要么逐条地复制粘贴,要么用技巧合并名单即可。

其实我们可以一表做到底!不用公式,透视表直接就能解决含同类产品最高销售额相同、不同类产品最高销售额相同的统计。采用前次教程的透视表+公式做法的前两步,得到下方的数据:




查询销量第一的菜名MySQL_Powered by 金山文档


到这里我们已经获得各类产品各个员工的销售额和排名。老板只需要冠军,则我们可以做一个筛选,只保留排名第一的数据。

在数据透视表表头旁边的空白单元格上单击鼠标,然后单击“数据”选项卡“筛选”按钮,让透视表的两列数值的表头也具有筛选功能,如下:


查询销量第一的菜名MySQL_Powered by 金山文档_02


单击“求和项:销售额2”筛选按钮,在弹出的菜单中首先取消“全选”,然后再选择数字“1”,单击“确定”按钮,则所有产品销售冠军就统计出来了。如下:


查询销量第一的菜名MySQL_excel_03


通常到这一步工作就算完成了。如果老板作怪,非要按他提供的产品类目顺序排列,那我们有两种办法:一种是逐条复制粘贴,一种是用公式查找。


查询销量第一的菜名MySQL_数据_04


复制粘贴就不用说了,这里说说怎么用公示把透视表中数据引用到结果区域中。

很多人第一反应就是VLOOKUP查找,输入公式:=VLOOKUP($F2,$F$15:$H$188,2,0)


查询销量第一的菜名MySQL_Powered by 金山文档_05


很显然,单纯使用VLOOKUP函数没有得到正确的结果:3名并列的“空调”冠军只得到一个姓名。

看起来这属于一对多查找,但因为需要将几个姓名合并到一个单元格,所以这并不是一对多的查找问题。好像又是一个挺麻烦的事情。其实再使用一个IF函数,就能将这个问题完美解决,方法如下:

(1)首选选中整个筛选后的排名表复制粘贴为数值。


查询销量第一的菜名MySQL_查询销量第一的菜名MySQL_06


(2)在N2单元格输入公式:=IF(K2=K3,L2&" "&N3,L2),并向下填充公式。注意” ”中有一个空格。


查询销量第一的菜名MySQL_Powered by 金山文档_07


(3)现在现在大家都知道该怎么办了吧,修改VLOOKUP函数的参数就能得到最终的结果了:


查询销量第一的菜名MySQL_复制粘贴_08


再来回想一下解决问题的过程:

1.用透视表得到各类商品销售排名数据;

2.筛选得到排名第一的数据;

3.复制粘贴为数值,然后用IF函数合并人员姓名;

4.使用VLOOKUP函数得到最终结果。

用IF函数合并人员姓名是一个不错的技巧,利用它可以把同类别的产品、同部门的人员等合并到一个单元格中。除此外也可以用IFERROR+VLOOKUP函数组合。