Excel如何篩選連續重複的數據

有朋友提出一個問題:

有一個Excel電子表格如下圖所示,有很多重複的電話號碼。我想把連續重複的電話號碼(例如C6:C8)標記出來,重複但不連續的電話號碼(例如C2和C6)不作處理,請問該如何操作?

問題解答

選中電話號碼所在的單元格(本例是C2:C14),點擊【開始】→【條件格式】→【新建規則】,彈出【新建格式規則】對話框,選中【使用公式確定要設置格式的單元格】。在【為符合此公式的值設置格式】欄中輸入以下公式:=OR(C2=OFFSET(C2,1,0),C2=OFFSET(C2,-1,0))。如下圖。

再點擊【格式】按鈕,在彈出的【設置單元格格式】對話框中點擊【填充】選項卡,指定一種顏色,點擊【確定】,如下圖。

再次點擊【確定】,即可。

這樣,我們就把連續重複的單元格標記出來了。

問題分析

標記某些符合條件的單元格,可以用條件格式。

對於簡單的條件(例如,前三名、大於某個值、介於某個值、等於某個值)可以點擊滑鼠就直觀的完成;而對於複雜的條件,就需要構建公式。本例正是構建了一個公式:=OR(C2=OFFSET(C2,1,0),C2=OFFSET(C2,-1,0))

解決這個問題的核心是:如何判斷多個單元格是連續重複的。分析一個連續重複的區域(如C6:C8、或C10:C13),我們可以發現,在這個區域里的單元格,可以劃分為兩種類型:

  1. 與它下面的單元格相等(如C6、C7);
  2. 與它上面的單元格相等(如C7、C8)。

那麼,只要某個單元格符合條件1或者條件2,也就是說,兩個條件滿足其一,就說明它處在一個連續重複的區域之內,需要把它標記出來。

以C2單元格為例,把以上兩個條件改寫成Excel表達式:

  1. C2與它下面的單元格相等,就是C2=OFFSET(C2,1,0);
  2. C2與它上面的單元格相等,就是C2=OFFSET(C2,-1,0)。

在這裡簡單講解一下OFFSET函數的基本語法。nOFFSET(某個單元格,行數,列數) 的意思是,從某個單元格出發,向下移動幾行,再向右移動幾列,所到達的那個單元格。 nOFFSET(C2,1,0),從C2出發,向下移動1行,向右移動0列,那就是C3單元格,也就是C2下面的單元格。nOFFSET(C2,-1,0),從C2出發,向下移動-1行——就是向上移動1行,向右移動0列,那就是C1單元格,即C2上面的單元格。n

因為條件1和條件2是「或者」的關係,所以用OR函數把這兩個條件連接起來,就是=OR(C2=OFFSET(C2,1,0),C2=OFFSET(C2,-1,0))。

也許有讀者會問:為什麼這個公式只判斷C2單元格?不是還有C3:C14嗎?

Excel知道你的顧慮,只要你在公式中指定某個區域的第一個單元格,它就會按照相對引用的法則,把這個區域中每一個單元格都代入公式,計算結果,根據結果設置條件格式。

- - -

Excel技能培養基金需要您的支持。。。

說人話!

就是請打賞我2元錢明天早飯買包子~~


推薦閱讀:

《PowerBI大師》使用手冊
DAX數據建模終極指南
學習筆記|圓環圖的分離程度和內徑大小是什麼,有何作用?
財經拋物線
這個《海上明月圖》居然是用Excel圖表畫的!怎麼做到的?

TAG:MicrosoftExcel | 数据分析 | Excel技巧 |