Excel如何篩選出重複的數據?

例如,abc三列,如何篩選出在abc三列中都出現過的數據?


一、函數法

D2=AND(COUNTIF(A:A,A2)&>0,COUNTIF(B:B,A2)&>0,COUNTIF(C:C,A2)&>0),D列返回TRUE的A列的對應值就是三列都出現的值。

二、POWERQUERY

三列分別導入powerquery

前兩個表先進行合併查詢,inner join。

刪除不需要的列後得到兩者中均包含的值。

再和第三表合併查詢,得到三表均包含的值。

三、條件格式

選中A2:C7,條件格式中設置公式為=AND(COUNTIF(A:A,A2)&>0,COUNTIF(B:B,A2)&>0,COUNTIF(C:C,A2)&>0),背景色設為紅色。A列返回紅色的單元格就是三列都出現的重複值。


用sql一句搞定,先給各列取名數據a、數據b、數據c,工作表名取為數據。語句如下:select 數據c from [數據$] where 數據c in(select 數據b from [數據$] where 數據b in(select 數據a from [數據$]))


更新說明!

今天看到500多人閱讀,15人已經收藏了,有點小激動,看看寫的內容突然發現不對。。。本著知錯就改的精神,在此重新回答問題

之前的回答,回答的是找到3張表去除重複值後的效果。和提問者所需要的有出入。。。

之前回答的時候,想著重複列,重複列就把重複列刪了。。。


ok來解題

題目是:「找出ABC三列里都出現過的數據」

思路通過兩次「合併查詢」來實現。這裡不能使用「條件格式」後面會講為什麼

  1. control + T 建表

2. 點中表格,在「數據」中選取「自表格」

3. 導入另外兩張表

4. 點擊「合併查詢」里的「將查詢合併為新查詢」,開始找「表1」「表2」里的重複數據

聯接種類:選內部,內部是指找出兩表中一樣的數據

5.右鍵改名,右鍵刪除列(放心列刪除不會影響數據)

要看一下「表2」的內容可以點擊畫圈部分,將其展開。其實數據和第一列應該是一樣的

6. 再次「合併查詢」,將「表3」數據拉入,做「內部」聯接

這裡不想再新建一個表,就想在原來表上做改動,所以就直接點擊「合併查詢」就好

可以看到,最上面「畫紅線的地方」已經沒有下拉菜單了

7. 右鍵改名,刪除列

可以看到之前的13行數據現在變成了12行

8. 關閉並上載,來做下驗證

這裡是文件,供大家把玩~

找三表中都出現過的重複值 PQ教學.xlsx23.4K · 百度網盤

PQ里的數據會根據你原表的變化而變化,所以是個全自動的。

如果數據有變,按一下「更新」即可


關於為什麼不能用「條件格式」:

條件格式給出的答案是這樣的一個模式,而我們所要的只是下面「綠色區域」的數據

要用PQ實現,請繼續往下看。

方法:

1 找出表12的重複值和非重複值

1.01 CTRL+T建表

1.02 點中表格,在「數據」中選取「自表格」

1.03 右鍵查詢導入另外兩張表

1.1 表12的重複值

1.11. 在「合併查詢」里選擇「將查詢合併為新查詢

1.12. 通過下來菜單選出「表1」「表2」,點擊需要的「數據列」,選擇「內部」

#「內部」是指兩個表中相同的數據

1.13. 在新表右鍵改名字,然後右鍵「表2」刪除列(不需要了)

1.2 表12的非重複值

1.21. 同上,但是這次選「外部」

#即:兩張數據列表的數據做並排對比

效果、點畫圈圖標展開表2,點確定

中文書寫麻煩,可以看到「SAME」為相同重複數據,「NOT SAME」為不相同不重複數據

1.22. 利用「條件列」做篩選,我們要的是把「表1」和「表2.表2」的數據展示為1,為其後面做篩選提供支持

在這裡,如果「1」和「表2.表2」的值一樣,則顯示1

效果、

1.23. 點擊小箭頭,選擇「null」,我們要「表1」「表2.表2」裡面沒重複的數據

1.24. 右鍵刪除列,「表12的非重複值」已經完成了他的使命,放心數據不會變動

1.25. 通過「Control」鍵來選擇「表1」「表2.表2」單擊「合併列」

新列名隨便取233333

效果、

2 「表3」與「表12的非重複值」 的重複數據 ==》命名「表A」來表示

2.01 合併查詢

2.02 選「內部」,我們要的是「表3」「表12的非重複值」里的重複數據

在做的時候,請確保你的「數據類型」是一樣的,在這裡用紅圈畫了,要改變「數據類型」就按那個畫圈圖標

2.03 右鍵改名,右鍵刪除多餘列

3「表3」與「表12的重複值」 的重複數據 ==》命名「表B」來表示

3.01 合併查詢,用「內部」找出「表3」與「表12的重複值」 的重複數據

3.02 右鍵改名,右鍵刪除多餘列

4 合併所有的數據,做匯總(回顧之前)

4.11 點擊「追加查詢」「將查詢追加為新查詢」

4.12 點擊「三個或更多表」「雙擊要加入的表」

4.13 右單擊,合併列

4.13 在「刪除行」中點擊「刪除重複列」

4.13 更改數據類型為「數字」(因為,提問者給的是數字。。。)

4.14 有強迫症的可以按排序

5. 搞定,點擊「關閉並上載」

5.1清理工作,刪除底下多餘的sheet,這裡刪除並不代表PQ裡面也會刪除,請大家放心

最終效果圖(順便用「條件格式」來驗證一下)

這裡是文件供大家把玩

找三表中的重複值 PQ教學.xlsx25.9K · 百度網盤


數據不規則的話,相同的數據不會排列在同一行,函數的話可能過於麻煩,建議用輔助列+透視表的方法。

每一列數據前面插入一列輔助列,命名 列1 ,列2 ,列3;

然後將列2 數據2、列3 數據3 分別複製到 列1 數據1下面;

插入數據透視表,如果某個數字出現了3次,就是重複數據。

以上,思路供參考。


這個問題啊是三個集合求交集的問題。

如果思路簡便一點那就是先求兩個集合的交集。再用結果和第三個集合進行求交集。

如何求交集呢?

我之前做了一個視頻。不用公式,完全就是點點滑鼠,只要懂得原理

https://mp.weixin.qq.com/s/_qjzbhOEW6RNhQRUuy-jbQ


推薦閱讀:

在excel中如何快捷將一個4*4帶行列標題的表格轉為對應3*10帶行標題的表格(實際數據多),如圖?
excel如何做到只刪除數據不刪除公式?
excel使用各種函數時什麼時候需要絕對引用?
excel 將一列數據複製到 篩選過的一列上 (需要複製到相對可見的單元格) ?

TAG:MicrosoftExcel | Excel使用 | ExcelHome |