VBA Odstrani dvojnike | Kako odstraniti podvojene vrednosti v Excelu VBA?

RemoveDuplicates v VBA Excel

Podvojene vrednosti v Excelu pogosto niso potrebne, še posebej, če želite, da štejejo unikatne vrednosti. Običajno imamo drugačen nabor podatkov, s katerimi lahko delamo in v njih vidimo kopico podvojenih vrednosti.

Upam, da ste seznanjeni z odstranjevanjem dvojnikov v Excelovem delovnem listu, če ne nič, kar vas skrbi, vam bomo pokazali preprost primer. Tudi v VBA lahko izvedemo metodo odstranjevanja dvojnikov.

Torej je odstranil vse podvojene vrednosti naslova "Regija". Podobno lahko to nalogo opravimo s pomočjo kode VBA.

Kako odstraniti podvojene vrednosti pri kodiranju VBA?

Če želimo najprej odstraniti podvojene vrednosti, moramo omeniti obseg, na katerega se sklicujemo, nato pa lahko dostopamo do metode »Odstrani dvojnike«. Sintaksa bo torej naslednja.

[Stolpec]: Kateri stolpec izbora moramo odstraniti dvojnike? Omeniti moramo številko stolpca izbranega obsega.

[Header]: obseg, ki ste ga izbrali, ima glave ali ne. Tu imamo tri možnosti za sodelovanje.

  • xlDa: Če imajo podatki glave, lahko to izberete.
  • xlNe: Če podatki nimajo glav, lahko to izberete.
  • xlGuess: Ta možnost bo Excelu omogočila, da ugane glave podatkov.

Torej z uporabo teh parametrov lahko dvojnike odstranimo s samo klikom na gumb, ne da bi se znebili.

V spodnjem razdelku vam bom pokazal nekaj primerov odstranjevanja dvojnikov VBA. Pazljivo sledite korakom, da kodo napišete sami.

Primeri odstranjevanja podvojenih vrednosti pri kodiranju VBA

Spodaj so primeri odstranjevanja dvojnika v vrednosti VBA.

VBA Removeduplicates - primer # 1

Upoštevajte tudi spodnje podatke za ta primer.

Iz zgornjih podatkov moramo odstraniti dvojnike stolpcev »Regija«, zato za pisanje kode sledite spodnjim korakom.

1. korak: Zaženite podproceduro tako, da makri daste ime.

2. korak: Omenite obseg podatkov z uporabo predmeta VBA Range .

Koda:

Pododsek Remove_Duplicates_Example1 () Obseg ("A1: C9"). Končaj pod

3. korak: Po omembi metode dostopa do obsega VBA » RemoveDuplicates «.

Koda:

 Sub Odstrani_Duplikati_Primer1 () Obseg ("A1: C9"). RemoveDuplicates End Sub 

4. korak: Prvi argument, v katerem stolpcu moramo odstraniti podvojene vrednosti. V tem primeru iz prvega stolpca moramo odstraniti dvojnike.

Koda:

 Pododsek Remove_Duplicates_Example1 () Obseg ("A1: C9"). Stolpci RemoveDuplicates: = 1, End Sub 

5. korak: Naslednja stvar je, ali imajo podatki glave ali ne. V tem primeru imamo glave, zato izberite »xlYes«.

Koda:

 Podstrana Remove_Duplicates_Example1 () Obseg ("A1: C9"). RemoveDuplicates Stolpci: = 1, Glava: = xlDa Konec Sub 

Zaženite to kodo, VBA bo iz izbrane regije odstranil dvojnike.

To je izrecni način sklicevanja na obseg celic. Če želite sami izbrati obseg in nato odstraniti dvojnike, moramo spremenljivko uporabiti za delo. V spodnjem primeru vam bom pokazal, kako uporabljati spremenljivke v VBA.

VBA Removeduplicates - primer # 2

V zgornjem primeru smo posebej navedli vrsto celic. Zdaj bomo videli, kako delati z izbiro lastnih celic.

Na primer, imam nekaj sklopov podatkov, kot je prikazano na spodnji sliki.

Vsakokrat ne morem izrecno določiti obsega celic, zato bomo izbiro dodelili kot obseg.

1. korak: Spremenljivko razglasite kot obseg .

Koda:

 Sub Remove_Duplicates_Example2 () Dim Rng As Range End Sub 

2. korak: Obseg je objekt, ki ga bomo nastavili kot naš izbor.

Koda:

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

3. korak: Zdaj lahko namesto vrste celic uporabimo spremenljivko " rng ".

Koda:

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

Before we run the code we need to select the range of cells first then we can remove duplicates from the selected range of cells.

VBA Remove Duplicates from Multiple Columns – Example #3

We can also use VBA to remove duplicate values from excel columns as well. In order to remove multiple columns, we need to use Array and mention the column numbers.

For example, look at the example data image.

We have duplicated values in the first column and fourth column. So we will remove from these columns. Use the below code to VBA to remove duplicates.

Code:

 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