在工作中经常遇到需要将某个Excel表格中某列数据中不重复的值提取出来的情况,本文讲述了使用INDEX函数、SMALL函数、IF函数、ROW函数以及MATCH函数实现从Excel列数据中提取不重复值的方法。
思路:
1、使用MATCH函数返回数组中每个元素第一次出现的位置;
2、用ROW函数返回数组中每个元素在数组中所处的位置,与第1步返回的数组逐一比对,如果相同说明该元素是首次出现,标识相应的行号;如果不同说明是重复出现,标识一个很大的行号,这里用4^8,4的8次方结果是65536,正好是2003版的最大行号,此处属于习惯用法;
3、使用IF函数生成一个由不重复元素所在的行号与65536组成的数组;
4、使用SMALL函数在第3步返回的数组中依次提取第1个值、第2个值、......第N个值;
5、最后使用INDEX函数提取相应位置上的数据,即列数据中的不重复值;
公式:
C2输入数组公式:
=INDEX(A:A,SMALL(IF(MATCH(A$2:A$10,A$2:A$10,0)=ROW($1:$9),ROW($2:$10),4^8),ROW(A1)))&""
按组合键结束输入,将公式向下填充至C10单元格。
实例下载:从列数据中提取不重复值.xls
http://pan.baidu.com/s/1eQw45Jc