Board logo

標題: [發問] 請問是否可以用VBA 自動檢查重複名稱 [打印本頁]

作者: mark15jill    時間: 2011-5-27 15:33     標題: 請問是否可以用VBA 自動檢查重複名稱

本帖最後由 mark15jill 於 2011-5-27 15:55 編輯

因為 有個總表 EXCEL 是匯集很多EXCEL檔案的資料
但是 資料很多都會重複
想說 能否於 附檔內的名字那邊 自動篩選 有重複的 以 紅色底色標示

如附檔內
王壹 有兩個 是否有辦法可以用紅色底色標示出來(並非單一個重複)

[attach]6358[/attach]
作者: Hsieh    時間: 2011-5-27 16:15

回復 1# mark15jill

你的附件中哪一筆資料沒重複?
基本上要讓重複部分顯示顏色只要用條件化格式即可
作者: GBKEE    時間: 2011-5-27 16:15

回復 1# mark15jill
  1. Sub Ex()
  2.     Dim D As Object, R
  3.     Set D = CreateObject("Scripting.Dictionary")
  4.     For Each R In Range("A1").CurrentRegion.Columns(2).Cells
  5.         R.Interior.ColorIndex = xlNone
  6.         If Not D.EXISTS(R.Value) Then
  7.           Set D(R.Value) = R
  8.         Else
  9.           Set D(R.Value) = Union(D(R.Value), R)
  10.         End If
  11.     Next
  12.     For Each R In D.KEYS
  13.         If D(R).Cells.Count > 1 Then D(R).Interior.ColorIndex = 37
  14.     Next
  15. End Sub
複製代碼

作者: mark15jill    時間: 2011-5-27 16:56

回復 2# Hsieh


    大大 我的意思是說
因為資料很多筆(附件只有短短幾筆)
而我必須去判斷說 有哪些名字是重複的  (因為該 資料名字是唯一的)
所以才想請問說 有沒有辦法能夠讓程式自己去判斷
作者: mark15jill    時間: 2011-5-27 16:59

回復 3# GBKEE


    大大 想請問一下 您這些程式是 以 A1 作為依據去搜索嗎?
那如果說要個別去判斷 要怎改呢???  
不好意思 問題有點多...

例如
王壹  有四筆 (不是順序列 如 001   009    070  099 )
黃貳 有四筆  (不是順序列 如 050  090  111  195)   <附件無>  

要怎去讓程式自己去判斷說  是否有重複的
作者: GBKEE    時間: 2011-5-27 20:09

回復 5# mark15jill
"大大 想請問一下 您這些程式是 以 A1 作為依據去搜索嗎?"
Range("A1").CurrentRegion.Columns(2).Cells
是以A1所延伸的範圍的第2欄Columns(2) 姓名欄作依據
可修改為Columns(?) 欄作依據
可察看CurrentRegion的說明
作者: mark15jill    時間: 2011-5-29 09:01

本帖最後由 mark15jill 於 2011-6-1 17:04 編輯

回復 6# GBKEE

不好意思 今天測試這個例子 發現以下一種情形..
如果是空白的話 他會視同有內容 而導致有顏色




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)