VBA Odstrániť duplikáty - Ako odstrániť duplicitné hodnoty v programe Excel VBA?

RemoveDuplicates in VBA Excel

V programe Excel sa často nevyžadujú duplicitné hodnoty, najmä ak chcete mať počet jedinečných hodnôt. Zvyčajne máme inú sadu dát, s ktorou môžeme pracovať, a vidíme v nej kopu duplicitných hodnôt.

Dúfam, že ste oboznámení s odstraňovaním duplikátov v pracovnom hárku programu Excel, ak sa nemusíte obávať. Ukážeme vám jednoduchý príklad pre vás. Aj vo VBA môžeme vykonať metódu odstránenia duplikátov.

Takže odstránil všetky duplicitné hodnoty nadpisu „Región“. Podobne môžeme túto úlohu vykonať pomocou kódu VBA.

Ako odstrániť duplicitné hodnoty v kódovaní VBA?

Aby sme najskôr odstránili duplicitné hodnoty, musíme spomenúť rozsah, na ktorý odkazujeme. Potom môžeme pristupovať k metóde „Odstrániť duplikáty“. Syntax bude teda nasledovná.

(Stĺpec): Ktorý stĺpec výberu potrebujeme na odstránenie duplikátov? Musíme spomenúť číslo stĺpca vybraného rozsahu.

(Hlavička): Rozsah, ktorý ste vybrali, má alebo nemá hlavičky. Máme tu tri možnosti spolupráce.

  • xlÁno: Ak majú dáta hlavičky, môžete ich zvoliť.
  • xlNo: Ak údaje nemajú hlavičky, môžete vybrať toto.
  • xlGuess: Táto možnosť umožní programu Excel uhádnuť hlavičky údajov.

Takže pomocou týchto parametrov môžeme odstrániť duplikáty jediným kliknutím na tlačidlo bez toho, aby sme sa zapotili.

V nasledujúcej časti vám ukážem niektoré príklady odstránenia duplikátov pomocou VBA. Pri písaní kódu postupujte opatrne.

Príklady odstránenia duplicitných hodnôt v kódovaní VBA

Nižšie uvádzame príklady odstránenia duplikátov v hodnotách VBA.

VBA Odstráňte duplikáty - Príklad č

Zvážte nižšie uvedené údaje aj pre tento príklad.

Z vyššie uvedených údajov musíme odstrániť duplikáty stĺpca „Region“, takže pri písaní kódu postupujte podľa nasledujúcich pokynov.

Krok 1: Začnite podproces pomenovaním kódu makra.

Krok 2: Spomeňte na rozsah údajov pomocou objektu Rozsah VBA .

Kód:

Rozsah Sub_Odstránenie_Duplikáty_Example1 () ("A1: C9"). Koniec Sub

Krok 3: Po zmienke o prístupe k rozsahu pomocou metódy VBA „ RemoveDuplicates “.

Kód:

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

Krok 4: Prvý argument, v ktorom stĺpci musíme odstrániť duplicitné hodnoty. V tomto príklade z prvého stĺpca musíme odstrániť duplikáty.

Kód:

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

Krok 5: Ďalšia vec je, či majú dáta hlavičky alebo nie. V tomto prípade máme hlavičky, takže vyberte možnosť „xlÁno“.

Kód:

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

Spustite tento kód. VBA odstráni duplikáty z vybratej oblasti.

Toto je výslovný spôsob odkazu na rozsah buniek. Ak si chcete vybrať rozsah sami a potom odstrániť duplikáty, na prácu musíme použiť premennú. V nasledujúcom príklade vám ukážem, ako používať premenné vo VBA.

VBA Odstráňte duplikáty - Príklad č. 2

Vo vyššie uvedenom príklade sme osobitne dodali sortiment buniek. Teraz uvidíme, ako pracovať s výberom vlastných buniek.

Mám napríklad niekoľko súborov údajov, ako je znázornené na nasledujúcom obrázku.

Zakaždým, keď nemôžem výslovne určiť rozsah buniek, priradíme výber ako rozsah.

Krok 1: Deklarujte premennú ako Rozsah .

Kód:

Sub Remove_Duplicates_Example2 () Dim Rng ako rozsah End Sub

Krok 2: Dosah je objekt. Nastavíme rozsah ako náš výber.

Kód:

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

Step 3: Now, instead of a range of cells, we can use the variable “rng.”

Code:

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.

V prvom a štvrtom stĺpci máme duplicitné hodnoty. Takže z týchto stĺpcov odstránime. Na odstránenie duplikátov použite nasledujúci kód do formátu VBA.

Kód:

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

Túto aplikáciu VBA Remove Duplicates Excel si môžete stiahnuť tu. VBA Odstrániť duplikáty šablóny programu Excel

Zaujímavé články...