|
▼初心者 さん:
>C1〜C300まで5ケタの番号が入っており
>ユーザーフォームにてその番号が重複してたら番号の表示をするには
とりあえず、[C1:C300]の重複する番号とその行位置をシートに表示する
プログラムです。
[C1:C300]データだけを別シートにコピーして、そのシートをアクティブ
にして、
以下を標準モジュールにコピーして実行して試してみてください。
Sub DupCheck1()
Dim v As Variant
Dim i As Long
Dim ss As String
Dim dic As Object
Const z = "_"
Set dic = CreateObject("Scripting.Dictionary")
v = Range("C1:C300").Value
For i = 1 To UBound(v)
ss = v(i, 1)
If Not dic.Exists(ss) Then
dic(ss) = i
Else
dic(ss) = dic(ss) & z & i
End If
Next
For Each v In dic.Keys()
If InStr(dic(v), z) = 0 Then dic.Remove v
Next
If dic.Count < 1 Then Exit Sub
Range("E1").Resize(dic.Count, 2).Value = _
Application.Transpose(Array(dic.Keys, dic.Items))
End Sub
|
|