VBA eltávolítsa a másolatokat

Az Excelnek van egy olyan funkciója, amelyet arra használnak, hogy eltávolítsa a párhuzamos értékeket a kiválasztott cellákból, sorokból vagy táblákból. Mi van, ha ezt a folyamatot automatizáljuk a VBA-ban? Igen, a másolat eltávolításának folyamata automatizálható a VBA-ban egy makró formájában. A másolat eltávolításának folyamatában, miután befejeződött, az egyedi értékek a listában vagy a táblázatban maradnak. Ez a Duplikátumok eltávolítása funkció segítségével lehetséges a VBA-ban.

Hogyan használható az Excel VBA eltávolítása a másolatokról?

Megtanuljuk a VBA eltávolító másolatok használatát, néhány példával az Excelben.

Itt töltheti le a VBA Eltávolít másolatok Excel sablonját - a VBA Eltávolít másolatok Excel sablont

1. példa - VBA eltávolítsa a másolatokat

Csak az A oszlopban van 1-5-től 20-ig terjedő számok listája. Amint az alábbi képernyőképen láthatjuk, az összes szám többször ismétlődik.

Most az a feladatunk, hogy eltávolítsuk a másolatot a listáról a VBA által. Ehhez lépjen a VBA ablakba az F11 billentyű megnyomásával.

Ebben a példában azt látjuk, hogy a VBA eltávolító másolatok hogyan működhetnek számokhoz. Ehhez modulra van szükségünk.

1. lépés: Nyissa meg az új modult a Beszúrás menüből, amely a Beszúrás menü lapon található.

2. lépés: Miután megnyitotta, írja be a VBA Remove Duplicate alkategóriáját az alább látható módon.

Kód:

 Sub VBARemoveDuplicate1 () Sub 

3. lépés: A másolat eltávolítása során először ki kell választania az adatokat. Ehhez a VBA-ban a Kiválasztás funkciót működtetjük mindaddig, amíg le nem válik a teljes adatlista kiválasztására, az alább látható módon.

Kód:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Válasszon Sub 

4. lépés: Most kiválasztjuk a kiválasztott cellák vagy A oszlopok tartományát. Ez addig megy le, amíg az adatok meg nem jelennek egy adott oszlopban. Nem csak a 20. sorig.

Kód:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Válassza ki a Range (Selection, Selection.End (xlUp)) lehetőséget. 

5. lépés: Most válassza ki a cellák tartományát egy jelenleg nyitott lapon az alábbiak szerint. Ez aktiválja a teljes oszlopot. Az A oszlopot választottuk a végéig.

Kód:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Válasszon tartományt (Selection, Selection.End (xlUp)). Válassza az ActiveSheet.Range ("A: A") lehetőséget. Befejezés Sub 

6. lépés: Most itt használja az RemoveDuplicate funkciót. Ez aktiválja a párhuzamos értékek eltávolításának parancsát az 1. oszlop sorozatából. Ha több oszlop van, akkor a szám hozzáadódik és vesszővel elválasztva a zárójelben (1, 2, 3, …).

Kód:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Válasszon tartományt (Selection, Selection.End (xlUp)). Válassza az ActiveSheet.Range ("A: A") lehetőséget. RemoveDuplicates oszlopok: = 1, Sub vége 

7. lépés: Most a Fejléc parancsot fogjuk használni, amely a kurzort a lap legfelső cellájába mozgatja, amely többnyire bármelyik táblázat fejlécében található.

Kód:

 Al VBARemoveDuplicate1 () Selection.End (xlDown) .Válasszon tartományt (Selection, Selection.End (xlUp)). Válassza az ActiveSheet.Range ("A: A") lehetőséget. RemoveDuplicates oszlopok: = 1, Header: = xlYes End Sub 

8. lépés: Most fordítsa le a kód lépéseit az F8 billentyű megnyomásával. Ha kész, akkor kattintson a Play gombra, hogy futtassa a kódot, az alább látható módon.

Mint láthatjuk, a másodpéldányszámot törlik az A oszlopból, és az egyetlen egyedi szám maradt.

2. példa - VBA eltávolítsa a másolatokat

Ebben a példában meglátjuk, hogyan lehet eltávolítani az ismétlődő értékeket egynél több oszlopból. Ehhez ugyanazt a másodlatlistát vesszük figyelembe, amelyet az 1. példában használtunk. De új módon további 2 oszlopot adtunk hozzá, amelyek értékei megegyeznek az alábbiakkal.

Ez egy másik módszer, egy kissé eltérő típusú kódszerkezettel.

1. lépés: Nyisson meg egy új modult a VBA-ban, és írja be az alkategóriát a VBA eltávolításának másolatába. Ha lehetséges, adjon meg egy sorszámot, így jobb lesz a megfelelő kód kiválasztása a futtatáshoz.

Kód:

 Sub VBARemoveDuplicate2 () Sub 

2. lépés: Először válassza ki a teljes lapot a VBA-ban, az alább látható módon.

Kód:

 Sub VBARemoveDuplicate2 () Cells.Select End Sub 

3. lépés: Most válassza ki az aktuálisan megnyitott lapot az ActiveSheet paranccsal, és válassza az A – C oszlopokat az alább látható módon.

Kód:

 Sub VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). Befejezés Sub 

4. lépés: Most válassza ki az RemoveDuplicates parancsot, majd az alábbiak szerint válassza az Oszlopmasszát 1–3-ig.

Kód:

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

5. lépés: Végül használja a Fejléc parancsot, amelyet be kell építeni az ismétlődő példányok xlYesként történő eltávolításába, az alábbiak szerint.

Kód:

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

6. lépés: Most fordítsa le a teljes kódot, és futtassa. Mint láthatjuk az alábbiakat, a teljes lapot kiválasztják, de az ismétlődő értékeket eltávolítják az A, B és C oszlopokból, csak egyedi számlálással.

3. példa - VBA eltávolítsa a másolatokat

Ez egy másik módszer a másolatok eltávolítására, amely a legegyszerűbb módszer a másolatok eltávolítására a VBA-ban. Ehhez az 1. példában látott és az alábbiakban bemutatott adatokat is felhasználjuk.

1. lépés: Most menj a VBA-ba, és írj újra alkategóriát a VBA eltávolításának másolataiból. Minden kódhoz megadtuk a sorozatokat, amelyekről megmutattuk, hogy megfelelő műsorszámmal rendelkeznek.

Kód:

 Sub VBARemoveDuplicate3 () Sub vége 

2. lépés: Ez meglehetősen hasonló minta, amelyet a 2. példában láthattunk, de a kód megírásának rövidítési módja a másolat eltávolításához. Ehhez először közvetlenül válassza ki az oszloptartományt, az alább látható módon. Az A oszlop 100-as cellájáig tartottuk a határértéket 1-től kezdve, majd ponttal (.)

Kód:

 Sub VBARemoveDuplicate3 () tartomány ("A1: A100"). Befejezés Sub 

3. lépés: Most válassza ki az RemoveDuplicates parancsot az alább látható módon.

Kód:

 Sub VBARemoveDuplicate3 () tartomány ("A1: A100"). RemoveDuplicates End Sub 

4. lépés: Most válassza ki az A oszlopokat, mint az 1. sorrendű Oszlopok parancsot. És utána tartalmazza a kiválasztott oszlopok fejlécét, valamint az alább láthatókat.

Kód:

 Sub VBARemoveDuplicate3 () tartomány ("A1: A100"). RemoveDuplicates oszlopok: = 1, fejléc: = xlYes End Sub 

5. lépés: Most fordítsa le az F8 billentyű lenyomásával és futtassa. Látni fogjuk, hogy kódunk eltávolította az ismétlődő számokat az A oszlopból, és csak az egyedi értékek vonatkoznak.

A VBA előnyei a másolatok eltávolítása

  • Hasznos a másodpéldányok gyors eltávolításában bármilyen sejttartományban.
  • Könnyen megvalósítható.
  • Ha hatalmas adatkészlettel dolgozik, akkor a duplikátum kézi eltávolítása nehézkessé válik, és leteszi a fájlokat, és a VBA Remove Duplicates másodperc alatt működik, hogy az egyedi értékeket adja meg nekünk.

Hátrányai a VBA Távolítsa el a másolatot

  • Nem célszerű a VBA Remove Duplicate-t nagyon kicsi adatokhoz használni, mivel ezt az Adat menüsorban található Duplicate eltávolítás funkcióval könnyen meg lehetne tenni.

Dolgok, amikre emlékezni kell

  • A tartomány kétféle módon választható meg. Miután kiválasztotta a cellák számát az 1. példában látható módon, a másik pedig a teljes oszlopot a végéig választja ki, mint az 1. példában látható.
  • Győződjön meg arról, hogy a fájlt a Macro-Enabled Excel programba mentette, amely lehetővé teszi számunkra, hogy az írott kódot többször is felhasználjuk anélkül, hogy elvesztenénk.
  • A Header függvény értékét Igen- ben tarthatja, mivel ez a fejlécet is kiszámítja, miközben eltávolítja a párhuzamos értékeket. Ha nincs fejléc név nevének duplikált értéke, akkor a No értékének tartása semmit nem árt.

Ajánlott cikkek

Ez egy útmutató a VBA másolatok eltávolításához. Itt megvitattuk, hogyan lehet használni az Excel VBA eltávolító másolatokat, valamint a gyakorlati példákat és a letölthető Excel sablont. Megnézheti más javasolt cikkeinket -

  1. Együttműködés a VBA Active Cell-tal
  2. Sor törlése a VBA-ban
  3. Hogyan kell használni az Excel VBA átültetést?
  4. Hogyan javítsuk ki a 1004 hibát a VBA használatával

Kategória: