Turinys
Vienas iš svarbiausių "Excel" veiksmų yra pašalinti dublikatus iš tam tikro duomenų rinkinio. Šiandien parodysiu, kaip "Excel" programoje pašalinti dublikatus naudojant tik VBA.
Atsisiųsti praktikos sąsiuvinį
Dublikatų šalinimas "Excel" programoje naudojant VBA.xlsm3 greiti VBA naudojimo "Excel" programoje būdai dublikatams pašalinti
Čia turime duomenų rinkinį su Vardai, ID, Žymos, ir Klasės kai kurių mokyklos, vadinamos "Saulėgrąžų darželiu", mokinių egzamine.
Atidžiai įsižiūrėję pastebėsite, kad kai kurie vardai pakartoti per klaidą.
Šiandien mūsų tikslas - pašalinti pasikartojančias reikšmes naudojant "Excel VBA".
1. Naudokite VBA, kad pašalintumėte dublikatus iš fiksuoto ląstelių diapazono
Visų pirma, mes bandysime pašalinti pasikartojančius pavadinimus naudojant fiksuotą ląstelių intervalą VBA kodas.
Šiuo atveju mūsų duomenų rinkinį sudaro intervalas B3:E15 sąsiuvinyje (įskaitant Stulpelių antraštės ).
Šį fiksuotą ląstelių intervalą naudosime šiame kode.
1 žingsnis:
➤ Atidaryti naują VBA langą ir įterpkite naują modulį (Spustelėkite čia, kad pamatytumėte kaip atidaryti ir įterpti naują VBA modulį "Excel" programoje).
➤ Įterpkite šį kodą į modulį:
Kodas:
Sub Remove_Duplicates() Range("A3:E14").RemoveDuplicates Columns:=1, Header:=xlYes End Sub
➤ Jis sukuria makrokomandą, vadinamą Remove_Duplicates . A3:E14 yra mano duomenų rinkinio diapazonas, o aš noriu pašalinti pasikartojančias eilutes remiantis 1 stulpelis . Naudokite savo.
2 žingsnis:
➤ Grįžkite į darbalapį ir paleiskite šią makrokomandą (spustelėkite čia, kad pamatytumėte, kaip paleisti makrokomandą).
➤ Bus pašalintos eilutės su pasikartojimais 1 stulpelyje ( Mokinio vardas ir pavardė).
Skaityti daugiau: Kaip ištrinti dublikatus "Excel" programoje, bet išsaugoti vieną (7 metodai)
2. Įterpkite VBA kodus, kad pašalintumėte dublikatus iš pasirinkto ląstelių diapazono
Dabar pabandysime sukurti makrokomandą, kuri galėtų pašalinti dublikatus iš bet kurio pasirinkto darbalapio ląstelių intervalo.
1 žingsnis:
➤ Atidaryti naują VBA langą ir vėl įterpkite kitą naują modulį.
➤ Įterpkite šį kodą į modulį:
Kodas:
Sub Remove_Duplicates() Dim Rng As Range Set Rng = Selection Rng.RemoveDuplicates Columns:=1, Header:=xlYes End Sub
➤ Jis sukuria makrokomandą, vadinamą Remove_Duplicates noriu pašalinti pasikartojančias eilutes pagal 1 stulpelis . Naudokite savo.
2 žingsnis:
➤ Grįžkite prie savo darbo lapo.
➤ Pasirinkite duomenų rinkinį ir paleiskite šį makrokomandą.
➤ Bus atliktas tas pats veiksmas, kaip ir pirmiau. 1 stulpelyje pašalinkite eilutes su pasikartojimais ( Mokinio vardas ir pavardė).
Skaityti daugiau: Kaip pašalinti pasikartojančias eilutes "Excel" programoje (3 būdai)
Panašūs skaitiniai
- Kaip pašalinti dublikatus iš "Excel" stulpelio (3 metodai)
- "Excel VBA": dublikatų šalinimas iš masyvo (2 pavyzdžiai)
- Kaip "Excel" programoje pašalinti dublikatus ir išsaugoti pirmąją reikšmę (5 metodai)
- Pašalinti pasikartojančias eilutes, išskyrus 1-ąjį atvejį, "Excel" programoje (7 būdai)
- Kaip pašalinti abu dublikatus "Excel" programoje (5 paprasti būdai)
3. Įterpkite VBA makrokomandą, kad iš kelių stulpelių pašalintumėte dublikatus
Iki šiol pašalinome eilutes, kurių 1 stulpelyje yra dublikatų ( Mokinio vardas ir pavardė ).
Tačiau iš tiesų dviejų mokinių vardai gali būti vienodi, tai ne visada reiškia, kad jie buvo įrašyti per klaidą, jei du vardai sutampa.
Tačiau jei dviejų mokinių ID taip pat sutampa, vadinasi, jie yra tas pats mokinys. Tuomet eilutę reikia pašalinti.
Šį kartą sukursime makrokomandą, kuri pašalins eilutę, jei dviejų eilučių pavadinimas ir ID sutampa.
1 žingsnis:
➤ Atidaryti naują VBA langą ir vėl įterpkite kitą naują modulį.
➤ Įterpkite šį kodą į modulį:
Kodas:
Sub Remove_Duplicates() Dim Rng As Range Set Rng = Selection Rng.RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes End Sub
➤ Jis sukuria makrokomandą, vadinamą Remove_Duplicates noriu pašalinti pasikartojančias eilutes pagal 1 ir 2 skiltis (vardas, pavardė ir ID) . Naudokite savo.
2 žingsnis:
➤ Grįžkite prie savo darbo lapo.
➤ Pasirinkite duomenų rinkinį ir paleiskite šį makrokomandą.
➤ Šį kartą eilutės bus pašalintos tik tuo atveju, jei vardas ir mokinio ID sutampa.
Pastaba: Šiuo atveju ji nepašalino Jennifer Marlo, nes abiejų mokinių ID skiriasi, t. y. jie yra du skirtingi mokiniai.
Skaityti daugiau: "Excel VBA": dublikatų šalinimas lyginant kelis stulpelius (3 pavyzdžiai)
Išvada
Naudodamiesi šiais metodais galite pašalinti dublikatus iš "Excel" duomenų rinkinio naudodami VBA. Ar turite problemų? Nedvejodami kreipkitės į mus.