VBA Uklanjanje duplikata

Excel ima značajku koja se koristi za uklanjanje duplikata vrijednosti iz odabranih ćelija, redaka ili tablice. Što ako taj proces automatiziramo u VBA? Da, postupak uklanjanja duplikata može se automatizirati u VBA u obliku makronaredbe. U procesu uklanjanja duplikata, kad se dovrši, jedinstvene vrijednosti ostaju na popisu ili tablici. To se može dogoditi uz pomoć funkcije uklanjanja duplikata u VBA.

Kako koristiti Excel VBA Uklanjanje duplikata?

Naučit ćemo kako koristiti VBA Remove Duplicates s nekoliko primjera u excelu.

Ovdje možete preuzeti VBA Remove Duplicates Excel predložak - VBA Remove Duplicates Excel predložak

Primjer # 1 - VBA Uklanjanje duplikata

Imamo popis brojeva koji počinju od 1 do 5 do reda 20 samo u stupcu A. Kao što vidimo na snimci zaslona u nastavku, svi se brojevi ponavljaju više puta.

Naš je posao ukloniti duplikat s popisa od strane VBA. Za to idite na VBA prozor pritiskom na tipku F11.

U ovom ćemo primjeru vidjeti osnovnu upotrebu načina uklanjanja duplikata VBA za brojeve. Za to nam treba Modul.

Korak 1: Otvorite novi modul iz izbornika Umetanje koji se nalazi na kartici izbornika Umetanje.

Korak 2: Jednom kada je otvoren upišite podkategoriju VBA Remove Duplicate, kao što je prikazano u nastavku.

Kodirati:

 Sub VBARemoveDuplicate1 () Kraj Sub 

Korak 3: U procesu uklanjanja duplikata, prvo moramo odabrati podatke. Za to ćemo u VBA vršiti funkciju odabira sve dok ne padne na odabir kompletnog popisa podataka kao što je prikazano u nastavku.

Kodirati:

 Sub VBARemoveDuplicate1 () Odabir.End (xlDown) .Izberite Kraj Sub 

Korak 4: Sada ćemo odabrati raspon odabranih ćelija ili stupaca A. Ići će se prema dolje dok ne dobijemo podatke u određenom stupcu. Ne samo do 20. reda.

Kodirati:

 Sub VBARemoveDuplicate1 () Odabir.End (xlDown) .Odaberite raspon (izbor, odabir. Kraj (xlUp)). 

Korak 5: Sada odaberite raspon ćelija na trenutno otvorenom listu kako je prikazano u nastavku. Tako ćete aktivirati cijeli stupac. Odabrali smo stupac A do kraja.

Kodirati:

 Pod VBARemoveDuplicate1 () Selection.End (xlDown) .Odaberite raspon (Selection, Selection.End (xlUp)). Odaberite ActiveSheet.Range ("A: A"). Kraj Sub 

Korak 6: Sada ovdje koristite funkciju RemoveDuplicate. To će aktivirati naredbu za uklanjanje duplikata vrijednosti iz niza stupaca 1. Ako postoji više stupaca, tada će se broj dodati i odvojiti zarezima u zagradama kao (1, 2, 3, …).

Kodirati:

 Pod VBARemoveDuplicate1 () Selection.End (xlDown) .Izberite raspon (Selection, Selection.End (xlUp)). Odaberite ActiveSheet.Range ("A: A") UkloniDuplicira Stupce: = 1, End Sub 

Korak 7: Sada ćemo upotrijebiti naredbu Header koja će pomaknuti kursor u gornju ćeliju lista koja je uglavnom u zaglavlju bilo koje tablice.

Kodirati:

 Pod VBARemoveDuplicate1 () Selection.End (xlDown) .Selektri opseg (Selection, Selection.End (xlUp)). Select ActiveSheet.Range ("A: A") RemoveDuplicates Column: = 1, Header: = xlYes End Sub 

Korak 8: Sada sastavite korake koda pritiskom na tipku F8. Nakon završetka kliknite gumb Reproduciraj da biste pokrenuli kod kao što je prikazano u nastavku.

Kao što vidimo, duplikat se briše iz stupca A i preostaje nam jedino jedinstveno brojanje.

Primjer # 2 - VBA Uklanjanje duplikata

U ovom ćemo primjeru vidjeti kako ukloniti duplicirane vrijednosti iz više stupaca. Zbog toga ćemo razmotriti isti duplikat upotrijebljen u primjeru-1. No na novi način dodali smo još 2 stupca istih vrijednosti kao što je prikazano u nastavku.

Ovo je još jedna metoda s malo drugačijom strukturom koda.

Korak 1: Otvorite novi modul u VBA i napišite podkategoriju u VBA Remove Duplicate. Ako je moguće, tada mu dodajte redni broj kako bi bilo bolje odabrati pravi kod za pokretanje.

Kodirati:

 Sub VBARemoveDuplicate2 () Kraj Sub 

Korak 2: Prvo odaberite kompletan list u VBA kao što je prikazano u nastavku.

Kodirati:

 Sub VBARemoveDuplicate2 () Cells.Select End Sub 

Korak 3: Sada odaberite trenutno otvoreni list naredbom ActiveSheet i odaberite stupce od A do C kao što je prikazano u nastavku.

Kodirati:

 Pod VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). Kraj Sub 

Korak 4: Sada odaberite naredbu RemoveDuplicates i nakon toga odaberite niz stupaca od 1 do 3 kao što je prikazano u nastavku.

Kodirati:

 Pod VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). RemoveDuplicates Column: = Array (1, 2, 3), End Sub 

Korak 5: Pri posljednjoj uporabi naredba Header koja se uključuje u postupak uklanjanja duplikata kao xlYes kao što je prikazano u nastavku.

Kodirati:

 Pod VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). RemoveDupplicat Stupci: = Niz (1, 2, 3), zaglavlje: = xlYes End Sub 

Korak 6: Sada sastavite cijeli kod i pokrenite. Kao što vidimo u nastavku, odabran je čitav list, ali duplikatne vrijednosti uklanjaju se iz stupaca A, B i C, vodeći samo jedinstveni broj.

Primjer # 3 - VBA Uklanjanje duplikata

Ovo je još jedna metoda uklanjanja duplikata, što je najjednostavniji način uklanjanja duplikata u VBA. Za to ćemo upotrijebiti podatke koje smo vidjeli u primjeru-1 i također prikazane u nastavku.

Korak 1: Sada pređite na VBA i ponovo napišite podkategoriju VBA Remove Duplicates. Dali smo slijed svakog koda za koji smo pokazali da ima pravilan zapis.

Kodirati:

 Sub VBARemoveDuplicate3 () Kraj Sub 

Korak 2: Ovo je prilično sličan obrazac koji smo vidjeli u primjeru 2, ali prečac za pisanje koda za uklanjanje duplikata. Za ovo prvo izravno započnite s odabirom raspona stupca kao što je prikazano u nastavku. Zadržali smo granicu do 100. ćelije stupca A počevši od 1, a slijedi točka (.)

Kodirati:

 Pod VBARemoveDuplicate3 () raspon ("A1: A100"). Kraj Sub 

Korak 3: Sada odaberite naredbu RemoveDuplicates kao što je prikazano u nastavku.

Kodirati:

 Pod VBARemoveDuplicate3 () raspon ("A1: A100"). RemoveDuplicates End Sub 

Korak 4: Sada odaberite stupce A kao naredbu Stupci sa redoslijedom od 1. A nakon toga uključuju zaglavlje odabranih stupaca, kao i dolje prikazano.

Kodirati:

 Pod VBARemoveDuplicate3 () raspon ("A1: A100"). Ukloni duplikate stupaca: = 1, zaglavlje: = xlDa kraj pot 

Korak 5: Sada ga sastavite pritiskom na tipku F8 i pokrenite. Vidjet ćemo da je naš kôd uklonio duplicirane brojeve iz stupca A, a zadrže se samo jedinstvene vrijednosti.

Pros VBA Uklanjanje duplikata

  • Korisno je za brzo uklanjanje duplikata u bilo kojem rasponu ćelija.
  • Lako je implementirati.
  • Kada radimo na ogromnom skupu podataka, gdje uklanjanje duplikata postaje teško ručno i objesi datoteke, a VBA Remove Duplicates djeluje u sekundi i daje nam jedinstvene vrijednosti.

Protiv VBA Uklanjanje duplikata

  • Nije korisno koristiti VBA Remove Duplicates za vrlo male podatke, jer bi to lako moglo učiniti funkcijom Uklanjanje duplikata dostupnom na traci izbornika Podaci.

Stvari koje treba zapamtiti

  • Raspon se može odabrati na dva načina. Jednom kada je odabrano ograničenje ćelija kao što je prikazano u primjeru-1, a ostalo je odabir cijelog stupca do kraja kao što je prikazano u primjeru-1.
  • Provjerite je li datoteka spremljena u Macro-omogućenom Excelu, što će nam omogućiti da pisani kôd koristimo više puta bez gubitka.
  • Možete zadržati vrijednost funkcije Zaglavlje kao Da, jer će brojati i zaglavlje dok uklanjate duplikate vrijednosti. Ako nema dvostruke vrijednosti s imenom imena zaglavlja, tada držanje kao Ne neće ništa štetiti.

Preporučeni članci

Ovo je vodič za uklanjanje duplikata VBA. Ovdje smo raspravljali o tome kako koristiti Excel VBA Remove Duplicates zajedno s praktičnim primjerima i download excel predložakom. Možete i pregledati naše druge predložene članke -

  1. Rad s VBA Active Cell
  2. Brisanje retka u VBA
  3. Kako se koristi Excel VBA Transpose?
  4. Kako popraviti pogrešku 1004 pomoću VBA

Kategorija: