手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

EXCEL函数提取指定列不重复值到任意列且无空格

时间:2024-10-12 20:42:31

1、函数目的:在I列取G列的不重翱务校肢复值完整函数:=IFERROR(INDEX(G:G,SMALL(IF(MATCH($G$1:$G$6,$G$1:$G$6,)=ROW($G$1:$G$6),ROW($G$1:$G$6),4^8),ROW(G1)))&"",””)思路:判断G列数据的行号,若为重复行号,则取个极大值,然后把结果排序;用INDEX函数+行号,把值取出。(数组函数Ctrl+Shift+Enter)

EXCEL函数提取指定列不重复值到任意列且无空格

2、用MATCH函数,可以取得相应值得行号。待查找值G1:G6,查找范围G1:G6,找到后范围对应数据的行号。对应函数:MATCH($G$1:$G$6,$G$1:$G$6,)得到结果:{1,2,2,2,5,6}

3、由于我们需要的行号是1,2,5,6;那么就需要把另外的两个2,忽略掉。这时需要引入IF、ROW、SMALL函数。① ROW函数,ROW(G1),往下拖公式时,会得到结果1,2,3,4,5荑樊综鲶,6--------n;② 用IF函数,判断MATCH的结果,与ROW的结果,若相同取ROW的结果,若不同,返回一个极大的数字,如4^8;对应函数:(IF(MATCH($G$1:$G$6,$G$1:$G$6,)=ROW($G$1:$G$6),ROW($G$1:$G$6),4^8)③ 用SMALL函数+ROW函数,将取得的行号的数字组合,从小到大排序,(这里为了函数更容易理解,把SMALL公式中,范围的部分,直接写成得到的列数的数组了),如:SMALL({1,2,4^8, 4^8,5,6,},ROW(G1)),得到结果{1,2,5,6,4^8, 4^8}对应函数:SMALL(IF(MATCH($G$1:$G$6,$G$1:$G$6,)=ROW($G$1:$G$6),ROW($G$1:$G$6),4^8),ROW(G1))

4、然后通过INDEX函数,把G列的值取出来对应函数:INDEX(G:G,SMALL(IF(MATCH($G$1:$G$6,$G$1:$G$6,)=ROW($G$1:$G$6),ROW($G$1:$G$6),4^8),ROW(G1)))

5、为了避免出现0值和错误值影响美观,在函数后面加上&””,在函数外面套上IFERROR(已有函数,””)对应函数:=IFERROR(INDEX(G:G,SMALL(IF(MATCH($G$1:$G$6,$G$1:$G$6,)=ROW($G$1:$G$6),ROW($G$1:$G$6),4^8),ROW(G1)))&"",””)完毕。(转载请注明出处)

© 手抄报圈