返回列表 上一主題 發帖

[發問] 找出重覆資料

回復 7# mdr0465
  1. Sub test()

  2.     Dim D As Object, R, x, k

  3.     Application.ScreenUpdating = False
  4.     [A2:A10000].EntireRow.Interior.ColorIndex = xlNone
  5.     [H2:J10000].Clear

  6.     Set D = CreateObject("Scripting.Dictionary")
  7.     For Each R In Range("D1").CurrentRegion.Columns(4).Cells
  8.         R.Interior.ColorIndex = xlNone
  9.         If Not D.Exists(R.Value) Then
  10.             Set D(R.Value) = R
  11.         Else
  12.             Set D(R.Value) = Union(D(R.Value), R)
  13.         End If
  14.     Next
  15.     [H1] = "電話重覆儲存格位置"
  16.     [I1] = "對應場的名稱"
  17.     For Each R In D.KEYS
  18.         If D(R).Cells.Count > 1 Then
  19.             D(R).EntireRow.Interior.ColorIndex = 6
  20.             For Each x In D(R)
  21.                 x位置 = ""
  22.                 x場地 = ""
  23.                 For Each k In D(R)
  24.                     If x.Address <> k.Address Then
  25.                         x位置 = x位置 & "," & k.Address(0, 0)
  26.                         x場地 = x場地 & "," & k.Offset(0, -3)
  27.                     End If
  28.                 Next
  29.                 x.Offset(0, 4) = Mid(x位置, 2, 99)
  30.                 x.Offset(0, 5) = Mid(x場地, 2, 99)
  31.             Next
  32.         End If
  33.     Next
  34.     Application.ScreenUpdating = True
  35. End Sub
複製代碼
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

        靜思自在 : 【時間如鑽石】時間對一個有智慧的人而言,就如鑽石般珍貴;但對愚人來說,卻像是一把泥土,一點價值也沒有。
返回列表 上一主題