Ну, вопрос в том, что у меня есть столбец, например, столбец Y содержит много записей, около 40 000, и он увеличивается каждую неделю. Дело в том, что я должен проверить наличие дубликатов в столбце Y и удалить всю строку. Таким образом, столбец Y должен содержать только уникальные записи.
Предположим, у меня есть 3000 записей, и через 1 неделю у меня будет около 3500 записей. Теперь я должен проверить эти вновь добавленные 500 значений столбцов, а не 3500 со старыми + новыми, т.е. 3500 записей, и удалить дублированную строку. Старые 3000 не должны быть удалены или изменены. Я нашел макросы, но они добились цели для всего столбца. Я хотел бы отфильтровать новые 500 значений.
Cells(2, "Q").Formula = "=COUNTIF(P$1:P1,P2)=0" 'I have used these formula
Range("Q2").Copy Destination:=Range("Q3:Q40109") 'it gives false for the duplicate values
Я знаю, что мы должны использовать countif
для дубликатов записей. Но то, что я делаю, применяет формулу, затем ищет ложные записи и затем удаляет ее. Я верю, применяя формулу и находя ложь, а затем удаляя ее немного отнимающий много времени.
Sub DeleteDups()
Dim x As Long
Dim LastRow As Long
LastRow = Range("A65536").End(xlUp).Row
For x = LastRow To 1 Step -1
If Application.WorksheetFunction.CountIf(Range("A1:A" & x), Range("A" & x).Text) > 1 Then
Range("A" & x).EntireRow.Delete
End If
Next x
End Sub
Это то, что я нашел в Google, но я не знаю, где ошибка. Он удаляет все столбцы, если я установил
For x = LastRow To 1 Step -1
For x = LastRow to step 3000 ' It is deleting all 500 columns but if it is -1 working fine
Какие-либо изменения должны быть сделаны для этой функции? или предложите мне любую хорошую функцию, которая помогает мне. Проверьте наличие повторяющихся значений в выбранном диапазоне столбцов для всего столбца. Я имею в виду проверить 500 вводит значения столбца с 3500 значений записи столбца и удалить дубликаты в 500 записей
Заранее спасибо