Excel教程下载和99uu优优中心,Microsoft技术社区联盟成员,全球领先的Excel门户,Office技术培训的最佳社区

Excel提取员工名单,就这么快

2015-06-16  作者:ExcelHome  阅读:
多行多列提取不重复值的数组公式太慢了,能优化吗?
求助内容是在一个工资表汇总内,提取不重复的员工姓名,并且提供了附件,附件的名字就叫“很慢”。
先来看看这个名叫“很慢”的工资汇总表中的数据吧:


有没有看眼晕了?哈哈
更让人眼晕的是这个提取不重复姓名的公式;
=INDIRECT(TEXT(MIN(IF((COUNTIF($P$1:P1,$A$3:$N$86)=0)*($A$3:$N$86<>"")*MOD(COLUMN($A$3:$N$86),2),
ROW($A$3:$N$86)*100+COLUMN($A$3:$N$86)),2^16),"R00C00"),)
在数据量大的工作表中使用这样复杂的公式,简直就是反人道主义啊。
用楼主的话说:“下拉到十几个的时候就很慢了,公式能优化吗?如果不能优化,用什么方法好些?”
今天咱们先不说这个反人道主义的公式是啥意思,看看用什么简便的方法能高效的解决问题。

1、 插入数据透视表

首先在A列之前插入一个空白列,这步很重要哦,作用后面会说到。
再依次按Alt →D→P,调出数据透视表向导:




根据提示选择数据所在的范围,这个范围包括A列刚刚插入的空白列,作用是保证所有数据都可以在数据透视表的值字段:


单击【完成】按钮,会自动插入一个新的工作表,并且有一个默认样式的数据透视表。



2、调整透视表结构

还需要继续调整一下,将【数据透视表字段】列表中的【行】、【列】、【页1】的勾选全部去掉:


然后将【数据透视表字段】列表中的【值】,从值区域拖动到行区域:


这时候,数据透视表的行字段就有数百个数字和姓名列表了:


接下来的工作是去掉这些数字内容,要不要一个个勾选啊?
咱们有简便方法哈,别急。


3、标签筛选

标签筛选,筛选大于特大号数值9e307的内容,因为文本是大于任何数字的,所以这样筛选后,就是全部的文本内容了:


OK,收工了,不看广告看疗效吧:


图文过程好像很复杂的样子,其实这个过程也就是十几秒吧:


转载请注明来源"ExcelHome"并保留原文链接。
固定链接:http://www.excelhome.net/lesson/article/excel/1606.html
分享到:
    上一篇:一组常用的Excel日期函数
    下一篇:我的Excel文档会唱歌
Copyright 1999 - 2017 Excel Home.All Rights Reserved.
本站特聘法律顾问:徐怀玉律师 李志群律师   沪ICP备11019229号 沪公网安备 31011702000001号
征信       
99uu优优