VBA Usuń duplikaty

RemoveDuplicates w VBA Excel

W programie Excel często nie są wymagane zduplikowane wartości, zwłaszcza gdy liczy się unikatowe wartości. Zwykle mamy inny zestaw danych do pracy i widzimy w nim kilka zduplikowanych wartości.

Mam nadzieję, że znasz usuwanie duplikatów w arkuszu programu Excel, jeśli nie ma się co martwić, pokażemy Ci prosty przykład. W VBA również możemy wykonać metodę usuwania duplikatów.

Dlatego usunięto wszystkie zduplikowane wartości nagłówka „Region”. Podobnie możemy wykonać to zadanie za pomocą kodu VBA.

Jak usunąć zduplikowane wartości w kodowaniu VBA?

Aby najpierw usunąć zduplikowane wartości, musimy wspomnieć o zakresie, do którego się odnosimy, a następnie możemy uzyskać dostęp do metody „Remove Duplicates”. Zatem składnia będzie następująca.

[Kolumna]: W której kolumnie zaznaczenia musimy usunąć duplikaty? Musimy wspomnieć o numerze kolumny z wybranego zakresu.

[Nagłówek]: wybrany zakres zawiera nagłówki lub nie. Mamy tutaj trzy opcje do wykorzystania.

  • xl Tak: Jeśli dane mają nagłówki, możesz to wybrać.
  • xlNo: Jeśli dane nie mają nagłówków, możesz to wybrać.
  • xlGuess: Ta opcja pozwoli programowi Excel odgadnąć nagłówki danych.

Dzięki tym parametrom możemy usuwać duplikaty jednym kliknięciem przycisku, nie przerywając nam potu.

W poniższej sekcji pokażę kilka przykładów usuwania duplikatów w języku VBA. Postępuj zgodnie z instrukcjami, aby samodzielnie napisać kod.

Przykłady usuwania zduplikowanych wartości w kodowaniu VBA

Poniżej znajdują się przykłady Usuń duplikaty w wartościach VBA.

Usunięte powtórzenia VBA - przykład nr 1

Weź pod uwagę poniższe dane również dla tego przykładu.

Z powyższych danych musimy usunąć duplikaty kolumny „Region”, więc wykonaj poniższe czynności, aby napisać kod.

Krok 1: Rozpocznij podprocedurę, nadając nazwę kodowi makra.

Krok 2: Wspomnij o zakresie danych, używając obiektu VBA Range .

Kod:

Sub Remove_Duplicates_Example1 () Range („A1: C9”). Napis końcowy

Krok 3: Po wspominaniu o dostępie do zakresu metody VBA „ RemoveDuplicates ”.

Kod:

 Sub Remove_Duplicates_Example1 () Range („A1: C9”). RemoveDuplicates End Sub 

Krok 4: Pierwszy argument, w której kolumnie musimy usunąć zduplikowane wartości. W tym przykładzie z pierwszej kolumny musimy usunąć duplikaty.

Kod:

 Sub Remove_Duplicates_Example1 () Range („A1: C9”). RemoveDuplicates Columns: = 1, End Sub 

Krok 5: Następną rzeczą jest to, czy dane mają nagłówki, czy nie. W tym przypadku mamy nagłówki, więc wybierz „xlYes”.

Kod:

 Sub Remove_Duplicates_Example1 () Range („A1: C9”). RemoveDuplicates Columns: = 1, Header: = xlYes End Sub 

Uruchom ten kod, a VBA usunie duplikaty z wybranego regionu.

To jest wyraźny sposób odniesienia się do zakresu komórek. Jeśli chcesz samodzielnie wybrać zakres, a następnie usunąć duplikaty, musimy użyć zmiennej do pracy. W poniższym przykładzie pokażę, jak używać zmiennych w VBA.

Usunięto duplikaty VBA - przykład nr 2

W powyższym przykładzie podaliśmy konkretnie zakres komórek. Teraz zobaczymy, jak pracować z wyborem własnych komórek.

Na przykład mam kilka zestawów danych, jak pokazano na poniższym obrazku.

Za każdym razem nie mogę jawnie określić zakresu komórek, więc przypiszemy zaznaczenie jako zakres.

Krok 1: Zadeklaruj zmienną jako zakres .

Kod:

 Sub Remove_Duplicates_Example2 () Dim Rng As Range End Sub 

Krok 2: Zakres to obiekt, ustawimy zakres jako nasz wybór.

Kod:

 Sub Remove_Duplicates_Example2 () Dim Rng As Range Set Rng = Selection End Sub 

Krok 3: Teraz zamiast zakresu komórek możemy użyć zmiennej „ rng ”.

Kod:

 Sub Remove_Duplicates_Example2 () Dim Rng As Range Set Rng = Selection Rng.RemoveDuplicates Columns: = 1, Header: = xl Tak End Sub 

Zanim uruchomimy kod, musimy najpierw wybrać zakres komórek, a następnie możemy usunąć duplikaty z wybranego zakresu komórek.

VBA Usuń duplikaty z wielu kolumn - przykład nr 3

Możemy również użyć VBA do usunięcia zduplikowanych wartości z kolumn programu Excel. Aby usunąć wiele kolumn, musimy użyć tablicy i podać numery kolumn.

Na przykład spójrz na przykładowy obraz danych.

Mamy zduplikowane wartości w pierwszej i czwartej kolumnie. Więc usuniemy z tych kolumn. Użyj poniższego kodu, aby VBA usunąć duplikaty.

Kod:

 Sub Remove_Duplicates_Example3 () Dim Rng As Range Set Rng = Range ("A1: D9") Rng.RemoveDuplicates Columns: = Array (1, 4), Header: = xlYes End Sub 

You can download this VBA Remove Duplicates Excel here. VBA Remove Duplicates Excel Template