Удаление дубликатов между 2 столбцами VBA - PullRequest
0 голосов
/ 27 апреля 2018

Я работаю над извлечением некоторых данных с сайта, помещая их в столбец J, сравнивая их с другим столбцом данных в столбце K, а затем удаляя любые дубликаты, найденные между двумя столбцами в столбце J.

Сейчас я использую это, но, похоже, оно не работает. Любые идеи о том, как это работает правильно?

Sub Remove_Duplicates()

'Create Range for SAP Batches
    Dim rng1 As Range
    Dim rng2 As Range


'Finds last cell in column J
    Set rng2 = .Range("K2").End(xlDown)

ActiveSheet.Range("J2:rng2").RemoveDuplicates Columns:=Array(1, 2),   Header:=xlNo

End Sub

1 Ответ

0 голосов
/ 27 апреля 2018

При этом используется метод FIND(), удаляя снизу вверх:

Sub KillDuplicated()
    Dim J As Range, K As Range
    Dim rc As Long
    rc = Rows.Count
    Set J = Range("J1:J" & Cells(rc, "J").End(xlUp).Row)
    Set K = Range("K1:K" & Cells(rc, "K").End(xlUp).Row)
    jcnt = J.Count

    For i = jcnt To 1 Step -1
        If K.Find(what:=Cells(i, "J"), after:=K(1)) Is Nothing Then
        Else
            Cells(i, "J").Delete shift:=xlUp
        End If
    Next i
End Sub

До:

enter image description here

и после:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...