Найти повторяющиеся значения в Excel и экспортировать строки на другой лист с помощью VBA
Я новичок в сценариях VBA ... Я пытаюсь сделать следующее:
проверить столбец на наличие дублирующихся значений в файле MS ExcelЕсли дубликаты присутствуют, скопируйте строки, содержащие повторяющиеся значения, на другой лист ...Например, у меня есть лист1 с содержанием:
Я хочу просмотреть содержимое столбца A и экспортировать строки, содержащие повторяющиеся значения в столбце A, на новый лист:
после поиска и редактирования некоторых сценариев VBA я придумал этот код:
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
Это правильный код? это может быть оптимизировано, чтобы быть быстрее?
У меня есть 80.000 записей, чтобы пройти через это ...