多行多列篩選不重復的值(EXCEL)
如何在多行多列中篩選不重復的值(EXCEL),看過(guò)幾位網(wǎng)友的操作方法,都比較復雜。
本人通過(guò)摸索,找到一個(gè)相對簡(jiǎn)便一些的方法:
原數據在A(yíng):D四列中,EF為添加的輔助列,G列為得到的結果,如圖:
表中用到四個(gè)公式,E1單元格公式為:
=IF(F1="","",ROW()-COUNTIF(F$1:F1,""))
F1單元格公式為:
=A1
F2單元格公式為:
=IF(OR(INDIRECT(ADDRESS(ROUNDUP(ROW()/4,0),IF(MOD(ROW(),4)=0,4,MOD(ROW(),4)),1,1))=0,COUNTIF(F$1:F1,INDIRECT(ADDRESS(ROUNDUP(ROW()/4,0),IF(MOD(ROW(),4)=0,4,MOD(ROW(),4)),1,1)))=1),"",INDIRECT(ADDRESS(ROUNDUP(ROW()/4,0),IF(MOD(ROW(),4)=0,4,MOD(ROW(),4)),1,1)))
G1單元格公式為:
=IF(ISERROR(VLOOKUP(ROW(),E:F,2,FALSE)),"",VLOOKUP(ROW(),E:F,2,FALSE))
將E1、F2、G1三個(gè)單元格的公式向下復制,結果就出來(lái)了。
最后可將EF兩列隱藏,結果如圖:
這里主要是利用行號ROW函數找到多行多列中對應的某個(gè)數值,并利用COUNTIF函數判斷該數值是否在該列(F列)出現過(guò),如果出現過(guò)就返回一個(gè)空值,如沒(méi)有出現過(guò)就返回該值。最后通過(guò)VLOOKUP函數和ROW函數對數據進(jìn)行整理(集中連續存放在G列)。
多行多列篩選不重復的值的改進(jìn)方法:
該方法只要兩個(gè)數組公式就可解決問(wèn)題,并且通用性較強(不受行列多少的限制)。

先將A1:D9區域命名為"DATA",然后在E1單元格輸入數組公式:
=IF(ROW()>COUNTA(DATA),"",INDEX(DATA,INT(SMALL(IF(DATA<>"",(ROW(DATA)*100+COLUMN(DATA))),ROW(A1))/100),RIGHT(SMALL(IF(DATA<>"",(ROW(DATA)*100+COLUMN(DATA))),ROW(A1)),2)*1))
將公式向下復制直到出現空白為止。
再將E列得到結果的區域E1:E26命名為"DAT2",然后在F1單元格輸入數組公式:
=IF(SUMPRODUCT(1/COUNTIF(DAT2,DAT2))<ROW(),"",INDEX(E:E,SMALL(IF(MATCH(DAT2,DAT2,)=ROW(DAT2),ROW(DAT2),10^4),ROW())))
將公式向下復制直到出現空白為止。
E列就是最終結果(多行多列中不重復的數據)。
聯(lián)系客服