VBA Remove Duplicates | Cum se elimină valorile duplicate în Excel VBA?

RemoveDuplicates în VBA Excel

Valorile duplicate nu sunt deseori necesare în Excel, mai ales atunci când doriți să aveți un număr unic de valori. De obicei, avem un set diferit de date cu care să lucrăm și vedem o grămadă de valori duplicat în el.

Sper că sunteți familiarizați cu eliminarea duplicatelor din foaia de lucru Excel, dacă nu este nimic îngrijorător, vă vom arăta un exemplu simplu pentru dvs. Și în VBA putem efectua metoda de eliminare a duplicatelor.

Deci, a eliminat toate valorile duplicate ale titlului „Regiune”. În mod similar, putem face această sarcină cu ajutorul codului VBA.

Cum se elimină valorile duplicate în codarea VBA?

Pentru a elimina mai întâi valorile duplicate, trebuie să menționăm intervalul la care ne referim, apoi putem accesa metoda „Elimină duplicatele”. Deci sintaxa va fi după cum urmează.

[Coloană]: Ce coloană din selecție trebuie să eliminăm duplicatele? Trebuie să menționăm numărul coloanei intervalului selectat.

[Antet]: Intervalul pe care l-ați selectat are anteturi sau nu. Avem trei opțiuni pentru a lucra aici.

  • xlDa: Dacă datele au anteturi, puteți selecta acest lucru.
  • xlNu: Dacă datele nu au anteturi, puteți selecta acest lucru.
  • xlGuess: Această opțiune va permite excelului să ghicească antetele datelor.

Prin urmare, folosind acești parametri putem elimina duplicatele cu doar un clic de buton fără a ne rupe transpirația.

În secțiunea de mai jos vă voi arăta câteva dintre exemplele pentru eliminarea duplicatelor VBA. Urmați pașii cu atenție pentru a scrie codul pe cont propriu.

Exemple de eliminare a valorilor duplicate în codificarea VBA

Mai jos sunt exemplele de Eliminare duplicat în valori VBA.

VBA Removeduplicates - Exemplul # 1

Luați în considerare și datele de mai jos pentru acest exemplu.

Din datele de mai sus, trebuie să eliminăm duplicatele coloanei „Regiune”, așa că urmați pașii de mai jos pentru a scrie codul.

Pasul 1: Porniți subprocedura dând un nume unui cod macro.

Pasul 2: menționați gama de date utilizând obiectul VBA Range .

Cod:

Sub Remove_Duplicates_Example1 () Range ("A1: C9"). Sfârșitul Sub

Pasul 3: După menționarea metodei VBA „ RemoveDuplicates ” de acces la interval .

Cod:

 Sub Remove_Duplicates_Example1 () Range ("A1: C9"). RemoveDuplicates End Sub 

Pasul 4: Primul argument în care coloană trebuie să eliminăm valorile duplicate. În acest exemplu din prima coloană, trebuie să eliminăm duplicatele.

Cod:

 Sub Remove_Duplicates_Example1 () Range ("A1: C9"). RemoveDuplicates Coloane: = 1, End Sub 

Pasul 5: următorul lucru este dacă datele au antete sau nu. În acest caz, avem anteturi, așa că selectați „xlYes”.

Cod:

 Sub Remove_Duplicates_Example1 () Range ("A1: C9"). RemoveDuplicates Coloane: = 1, Header: = xlDes End Sub 

Rulați acest cod, VBA va elimina duplicatele din regiunea selectată.

Acesta este un mod explicit de a face referire la gama de celule. Dacă doriți să selectați gama pe cont propriu și apoi să eliminați duplicatele, trebuie să folosim variabila pentru a lucra. În exemplul de mai jos vă voi arăta cum să utilizați variabile în VBA.

VBA Removeduplicates - Exemplul nr. 2

În exemplul de mai sus, am furnizat în mod specific gama de celule. Acum vom vedea cum să lucrăm cu selecția propriilor celule.

De exemplu, am câteva seturi de date așa cum se arată în imaginea de mai jos.

De fiecare dată nu pot specifica în mod explicit gama de celule, așa că vom atribui selecția ca interval.

Pasul 1: declarați variabila ca Range .

Cod:

 Sub Remove_Duplicates_Example2 () Dim Rng As Range End Sub 

Pasul 2: Gama este un obiect pe care îl vom seta ca selecție.

Cod:

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

Pasul 3: Acum, în loc de o gamă de celule, putem folosi variabila „ rng ”.

Cod:

 Sub Remove_Duplicates_Example2 () Dim Rng As Range Set Rng = Selection Rng.RemoveDuplicates Coloane: = 1, Header: = xlDes End Sub 

Înainte de a rula codul, trebuie să selectăm mai întâi gama de celule, apoi putem elimina duplicatele din gama de celule selectată.

VBA Elimină duplicatele din mai multe coloane - Exemplul nr. 3

De asemenea, putem folosi VBA pentru a elimina valorile duplicate din coloanele Excel. Pentru a elimina mai multe coloane, trebuie să folosim Array și să menționăm numerele coloanelor.

De exemplu, uitați-vă la exemplul de imagine de date.

Avem valori duplicate în prima și în a patra coloană. Deci, vom elimina din aceste coloane. Utilizați codul de mai jos pentru a elimina duplicatele.

Cod:

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

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