首先,我們這是討論單列的重復(fù)值標(biāo)識、篩選、刪除等處理方法,多列的重復(fù)值需要其他技巧或者函數(shù)公式,暫不在此討論。而在這里,我們主要用的COUNTIF函數(shù),其他人有用MATCH的,但那有點(diǎn)繞所以沒必要也不講。
先來看看比較典型的數(shù)據(jù)和一般初學(xué)者都會問到的處理要求:

如果你是吃慣快餐的人,那可以挑與你要求一致的查看。
當(dāng)然,不一定能吃飽,而能全部仔細(xì)看完的話,你肯定更能運(yùn)用自如……
-------------------------
1.
將重復(fù)值全部高亮標(biāo)識出來;
這種要求比較簡單,而一般的“高亮標(biāo)識”,其實基本上就意味著你要用“條件格式”來實現(xiàn)。
先簡單科普一下“條件格式”是一種什么樣的概念,條件格式就是Excel根據(jù)你指定或者選擇的判斷條件,讓滿足這些條件的數(shù)據(jù)用指定的特別顯示方式來突出顯示,比如說你想把顯示“不及格”的數(shù)據(jù)都變成紅色,那就可以使用條件格式,因此在Exce中,只要你有規(guī)律性的“條件”,那就一定可以讓滿足條件的突出顯示出來。
新版本的“條件格式”按鈕在開始工具欄的中間,如下,而03版的命令則在“格式”菜單下;

我們先講03版的操作過程:
1.
選中要標(biāo)識重復(fù)的數(shù)據(jù)列,如下的B2:B13區(qū)域;
2. “格式” →
“條件格式”
3.
在彈出對話框中,選擇“公式”,右側(cè)輸入下面公式:
=COUNTIF(B$2:B$13,B2)>1
4.
選擇需要高亮顯示的背景色或其他格式,確定。

03版的設(shè)置需要手動定義條件格式公式的方法,有點(diǎn)復(fù)雜,而條件格式里公式的寫法,我們需要稍微科普一下:
1.
公式只需要針對“活動單元格”書寫就行了;
2.
公式能保證向下“復(fù)制”正確性。
滿足上面的兩個條件,也就能完成所選區(qū)域的全部條件設(shè)置,就尤如我們在單元區(qū)域下拉填充公式的原理是一樣的,因此不要在公式里想當(dāng)然地寫能對應(yīng)整個區(qū)域的公式,其實那是錯誤的。
03版的設(shè)置雖然麻煩了一點(diǎn),但這是通用式,你會設(shè)置條件格式,也同樣會用來篩選。而07版以后來處理同樣的問題,就太簡單了,直接選擇區(qū)域,“條件格式”
→ “突出顯示單元格規(guī)則”
→
“重復(fù)值”

---------------------------------------------
2.
標(biāo)識后面出現(xiàn)重復(fù)的值(第一次出現(xiàn)不標(biāo)識);
從上面的操作我們知道,要把重復(fù)值全部標(biāo)識出來其實太簡單了,但如果我們只想標(biāo)識后面重復(fù)的項目呢?
這個就沒有直接的方式了,而需要自定義函數(shù)公式來判斷是否是第一次出現(xiàn)還是多次重復(fù),因為我們更多的時候是要把后面重復(fù)的刪除掉:
1.
選中需要高亮顯示重復(fù)值的數(shù)據(jù)區(qū)域,如下的B2:B13區(qū)域;
2. 條件格式 →
新建規(guī)則 →
使用公式確定要設(shè)置格式的單元格
3. 輸入如下公式:
=COUNTIF(B$2:B2,B2)>1
4. 設(shè)置高亮格式, 確定

這個問題的重點(diǎn),還是在于“公式”……我們每次都使用COUNTIF函數(shù),這個到底是什么一回事呢?
COUNTIF 函數(shù)是對區(qū)域中滿足單個指定條件的單元格進(jìn)行計數(shù)。
COUNTIF(range,
criteria)
上面是幫助文件中的話,其實很明了地告訴我們:
1.
COUNTIF是一個單條件計數(shù)函數(shù),只有兩個必需參數(shù);
2. range表示要統(tǒng)計的區(qū)域,ciriteria表示要統(tǒng)計的條件;
B$2:B2
是什么樣一個概念呢?其實這是一個從B2單元格開始的區(qū)域,只是從一開始,這個區(qū)域里只有B2一個單元格,隨著公式下拉填充,其下限區(qū)域不斷擴(kuò)大……
第一個單元格就是計算B2在B$2:B2區(qū)域里相同的個數(shù),然后判斷個數(shù)是否大于1;
第二個單元格將計算B3在B$2:B3區(qū)域里相同的個數(shù),然后判斷個數(shù)是否大于1;
第三個單元格計算B4在B$2:B4區(qū)域內(nèi)相同的個數(shù),判斷個數(shù)是否大于1;
……依此類推……
到了第六個單元格,是計算B7在B$2:B7區(qū)域內(nèi)相同的個數(shù),這時候B$2:B7內(nèi)有兩個John,所以結(jié)果為2,也就是大于1,因此這個就可以判斷為已經(jīng)重復(fù)的值。
初學(xué)的一般沒辦法馬上理解,一步一腳印慢慢分析……
---------------------------
3.
提取不重復(fù)值;
這個問題比較簡單也可以很直接,我們只需要使用“高級篩選”功能即可,如下:

這里有兩個問題要注意一下:
1.
第一步選擇的篩選區(qū)域,只能選擇要判斷的字段,比如說這里只能選擇B列的“NAME”,不能整個區(qū)域選擇,如果選擇整個數(shù)據(jù)區(qū)域,那將是各個字段都進(jìn)行重復(fù)與否的判斷;
2.
高級篩選不能處理大于15位的文本型數(shù)值,因此需要借助COUNTIF加輔助列進(jìn)行篩選處理,只需要將問題二的公式稍微修改一下就行了。
-----------------------------------
4.
刪除重復(fù)值;(直接 / 間接)
這里有直接方法和間接方法,其實就是03版與其他新版的區(qū)別,因為新版有專用功能,而且非常強(qiáng)大,雖然WPS也抄了這個功能,但只是形像而神不像,能處理的情況是天壤之別。


那間接方法呢?其實就是用我們上面添加條件格式的判斷公式,放到單元格里,產(chǎn)生的結(jié)果就可以用來篩選并且刪除數(shù)據(jù)了:
