假如表頭是A1,數(shù)據(jù)是A2:A24,在C列中用公式:
C2{=OFFSET($A$1,MATCH(,COUNTIF($C$1:C1,$A$2:$A$24),),)&""}
(結(jié)果順排)
其中:
COUNTIF($C$1:C1,$A$2:$A$24)
COUNTIF第二個參數(shù)為區(qū)域時,這就是個數(shù)組函數(shù),返回第二個參數(shù)中每個數(shù)在第一個區(qū)域中個數(shù)的一組數(shù)。
因為$C$1:C1中沒有與數(shù)據(jù)中相同的值,所以返回的結(jié)果是一組均為0的數(shù)組;當公式拉至下一個單元格時,因為$C$1:C1變成了$C$1:C2,而C2是與數(shù)據(jù)中的第一個值相同的,這樣就會返回第一個為1其余為0的一組數(shù)組;類推……
MATCH(,COUNTIF(),)
這個就是查找0值在COUNTIF這個數(shù)組中第一次出現(xiàn)的位置。
OFFSET($A$1,MATCH(),)
以A1為參照,向下偏移。
以上函數(shù)源自蘭色幻想。
關(guān)于主要段結(jié)果的數(shù)組表:

5、函數(shù)法解決:
假如表頭是A1,數(shù)據(jù)是A2:A24,在C列中用公式:
C2=LOOKUP(1,1/NOT(COUNTIF($C$1:C1,$A$2:$A$24)),$A$2:$A$24)
其中:
COUNTIF($C$1:C1,$A$2:$A$24)
COUNTIF第二個參數(shù)為區(qū)域時,這就是個數(shù)組函數(shù),返回第二個參數(shù)中每個數(shù)在第一個區(qū)域中個數(shù)的一組數(shù)。
因為$C$1:C1中沒有與數(shù)據(jù)中相同的值,所以返回的結(jié)果是一組均為0的數(shù)組;當公式拉至下一個單元格時,因為$C$1:C1變成了$C$1:C2,而C2是與數(shù)據(jù)中的第一個值相同的,這樣就會返回第一個為1其余為0的一組數(shù)組;類推……
NOT(COUNTIF())
把COUNTIF結(jié)果為1的轉(zhuǎn)為0,結(jié)果為0的轉(zhuǎn)為1。
1/NOT()
把NOT結(jié)果為1的仍保留,結(jié)果為0的轉(zhuǎn)為NA
LOOKUP(1/NOT())
利用的LOOKUP模糊查找,最后一個與1對應的位置的值。
以上函數(shù)源自Abigale(372014140)
關(guān)于主要段結(jié)果的數(shù)組表: 
6、函數(shù)法解決:
假如表頭是A1,數(shù)據(jù)是A2:A24,在C列中用公式:
C1{=IF(SUM(1/COUNTIF($A$1:$A$24,$A$1:$A$24))>=ROW(A1),OFFSET($A$1,SMALL(IF(MATCH($A$1:$A$24,$A$1:$A$24,0)=ROW($A$1:$A$24),ROW($A$1:$A$24)),ROW(A1))-1,),"")}
(結(jié)果順排)
其中:
SUM(1/COUNTIF($A$1:$A$24,$A$1:$A$24))
用來計算不重復個數(shù)。
IF(SUM()>=ROW(A1),OFFSET(),"")
利用不重復個數(shù)與所在行數(shù)之間的關(guān)系來假空顯示重復個數(shù)以外的值。
MATCH($A$1:$A$24,$A$1:$A$24,0)
返回A1:A24內(nèi)各值位置的排列,每個值都只返回第一次出現(xiàn)的位置。
IF(MATCH()=ROW(),ROW())
利用條件來判斷,如果是第一次出現(xiàn)的值,則返回該值所在的行數(shù);如不是第一次出現(xiàn),返回FALSE(0)。
SMALL(IF(),ROW())
返回IF()所得一系列數(shù)組中第N小的一個,N與公式所在行的行號值一致。
OFFSET($A$1,SMALL(),)
返回自A1起向第SMALL()出的結(jié)果偏移的值。
以上函數(shù)源自小爪(461699029)
關(guān)于主要段結(jié)果的數(shù)組表: 
7、函數(shù)法解決:
假如表頭是A1,數(shù)據(jù)是A2:A24,在C列中用公式:
C2{=INDEX(A:A,SMALL(IF(FREQUENCY(MATCH($A$2:$A$24,$A$2:$A$24,),MATCH($A$2:$A$24,$A$2:$A$24,)),ROW($A$2:$A$24),65536),ROW(A1)))&""}
其中:
MATCH($A$2:$A$24,$A$2:$A$24,0)
返回A2:A24內(nèi)各值位置的排列,每個值都只返回第一次出現(xiàn)的位置。
FREQUENCY(MATCH(),MATCH())
返回每個MATCH后的值的出現(xiàn)頻次。
IF(FREQUENCY(),ROW(),65536)
當FREQUENCY值不為0時返回相對應的行號,為0時返回65536。
SMALL(IF(),ROW(A1))
返回第N小的值,這個N根據(jù)行號的變動而變動。
SMALL所返回的值,也就是數(shù)據(jù)中第一次出現(xiàn)的值的位置。
INDEX(A:A,SMALL())&""
這個就不用多解釋了,后面的&""是為了消除0。
這里不用INDEX,而是用OFFSET($A$1,SMALL()-1,)也可以達到同樣效果。
以上函數(shù)源自刀狐
關(guān)于主要段結(jié)果的數(shù)組表: 
8、EXCEL2007/2010版解決:
9、用數(shù)據(jù)透視表無疑是個非常不錯的辦法,不僅剔除了重復,還可以列出來每項重復了多少次:

10、VBA解決:
Sub M()
Dim myrow As Long
Dim myrng As Range
myrow = Range("a65536").End(xlUp).Row
Set myrng = Range("a1:a" & myrow)
myrng.AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Range("B1"), Unique:=True
End Sub
其實沒什么特別的,就是高級篩選而已啦……
11、函數(shù)法:
假設(shè)數(shù)據(jù)在B2:D15區(qū)域內(nèi)
先自定義函數(shù)名稱AA=T(INDIRECT(TEXT(MOD(SMALL(COLUMN($B$2:$D$15)*10001+ROW($B$2:$D$15)*10,ROW($1:$42)),1000),"R0C0"),))(源自Lukyguy2008)
再設(shè)置函數(shù):=INDEX(aa,SMALL(IF(MATCH(aa,aa,)=ROW($B$1:$B$42),ROW($B$1:$B$42),65536),ROW(B1)),1)(數(shù)組)下拉
以上公式未消除后面的錯誤值,如需要消除,需要再套ISERR。
以上公式還有缺陷,即只能用于文本的剔除重復。
關(guān)于主要段結(jié)果的數(shù)組表:
