返回列表 上一主題 發帖

如何找出重複資料

如何找出重複資料

我只會在每行資料旁用COUNTIF 計算多於1的資料, 再用篩選將重複資料找出
但因為有過萬行資料而會好慢,
請問會有簡單方法可以篩選出重複資料或複製到另一工作表嗎?
請指教

本帖最後由 p212 於 2013-12-21 14:50 編輯

回復 1# enoch
如圖,儲存格A2-A17含有重複資料,於儲存格B2輸入陣列公式:
=IFERROR(INDEX(A:A,MATCH(0,COUNTIF(B$1:B1,$A$1:$A$17),)),"")
向下複製公式即可找出分布於儲存格A2-A17的唯一值,請參考!

screenshot_10.jpg (113.15 KB)

screenshot_10.jpg

TOP

回復 1# enoch
如2#的圖示 第一個工作表 篩選不重複的資料 (Unique:=True) 到第2個工作表
  1. Option Explicit
  2. Sub Ex()
  3.     Sheets(1).Range("A1:A17").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=Sheets(2).Range("A1"), Unique:=True
  4. End Sub
複製代碼
感恩的心......(在麻辣家族討論區.用心學習會有進步的)
但資源無限,後援有限,  一天1元的贊助,人人有能力.

TOP

用COUNTIF很慢
建議用 進階篩選 - 勾選 不重複資料 - 勾選 複製到其他地方
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

多謝各位前輩指教, 但若果我想找出那些資料是重複呢?
因重複代表了資料輸入出錯, 若果發現重複, 找出重複資料
請再指教

TOP

排序後再處理會比較快
如有萬筆資料,用COUNTIF會很慢,建議先用排序後再處理會比較快

例如 A欄 排序後
於 B2輸入公式 =IF(OR(A2=A1,A2=A3),1,0) 點右下黑方點往下全部複製
1表是重覆,0表示沒有重覆
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

如果不排序

B2 =IF(MATCH(A2,A:A,)=ROW(),0,1)
0表示沒有重覆,1表是有重覆

但此公式只是標示第二筆以後重覆資料為 1 ,進行篩選 1 後,一般直接刪除,或剪下貼至他欄
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

回復 6# ML089


排序後再處理會比較快
如有萬筆資料,用COUNTIF會很慢,建議先用排序後再處理會比較快

例如 A欄 排序後
於 B2輸入公式 =IF(OR(A2=A1,A2=A3),1,0) 點右下黑方點往下全部複製
1表是重覆,0表示沒有重覆
   
以上重複項全部標示為 1

若需要第二項以後重覆標示為1時
B2 =IF(A2=A1,1,0)
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

        靜思自在 : 對父母要知恩,感恩、報恩。
返回列表 上一主題