Encuentre valores duplicados en Excel y exporte filas a otra hoja usando VBA
Soy nuevo en los scripts de VBA ... Lo que intento hacer es:
verifique la columna para valores duplicados en el archivo MS ExcelSi hay duplicados, copie las filas que contienen valores duplicados a otra hoja de trabajo ...Por ejemplo, tengo una hoja1 con contenido:
Quiero revisar el contenido de la columna A y exportar filas que contengan valores duplicados en la columna A a una nueva hoja:
Después de buscar y editar algunas secuencias de comandos de VBA se me ocurrió este código:
Sub FilterAndCopy()
Dim wstSource As Worksheet, _
wstOutput As Worksheet
Dim rngCell As Range, _
rngMyData As Range
Dim lngMyRow As Long
Set wstSource = Worksheets("Sheet1")
Set wstOutput = Worksheets("Sheet2")
Set rngMyData = wstSource.Range("A1:A" & Range("A" & Rows.Count).End(xlUp).Row)
Application.ScreenUpdating = False
For Each rngCell In rngMyData
If Evaluate("COUNTIF(" & rngMyData.Address & "," & rngCell.Address & ")") > 1 Then
lngMyRow = wstOutput.Cells(Rows.Count, "A").End(xlUp).Row + 1
wstSource.Range("A" & rngCell.Row & ":D" & rngCell.Row).Copy _
Destination:=wstOutput.Range("A" & lngMyRow & ":D" & lngMyRow)
End If
Next rngCell
Application.ScreenUpdating = True
End Sub
¿Es este el código correcto? ¿Se puede optimizar para ser más rápido?
Tengo 80,000 registros para completar ...