Содржина
Една од најважните активности во Excel е да се отстранат дупликатите од даден сет на податоци. Денес ќе покажам како да отстраните дупликати во Excel користејќи само VBA.
Преземете ја работната книга за вежбање
Отстранете ги дупликатите во Excel со VBA.xlsm
3 брзи методи за користење на VBA во Excel за отстранување дупликати
Овде имаме збир на податоци со Имиња, ИД, Оценки, и Оценки во испитувањето на некои ученици од едно училиште наречено градинка сончоглед.
Ако погледнете внимателно , ќе откриете дека некои имиња се повторуваат погрешно.
Денес нашата цел е да ги отстраниме дупликатните вредности користејќи Excel VBA.
1. Користете VBA за да отстраните дупликати од фиксниот опсег на ќелии
Прво, ќе се обидеме да ги отстраниме дупликатите имиња користејќи фиксен опсег на ќелии во VBA код.
Овде, нашиот сет на податоци е опсегот B3:E15 во работната книга (вклучувајќи ги и Заглавија на колони ).
Ќе користиме овој фиксен опсег на ќелии во кодот овде.
Чекор 1:
➤ Отворете нов прозорец VBA и вметнете нов модул (Кликнете овде за да видите како да отворите и вметнете нов VBA модул во Excel).
➤ Вметнете го овој код во модулот:
Код:
1813
➤ Се произведува макро наречено Отстрани_дупликати . A3:E14 е опсегот на моето множество податоци и сакам да ги отстранам дупликатите редови врз основа на Колона 1 . Виекористете го вашиот.
Чекор 2:
➤ Вратете се на вашиот работен лист и стартувајте го ова макро (Кликнете овде за да видите како за да се изврши Macro).
➤ Ќе ги отстрани редовите со дупликати во колоната 1 ( Име на ученикот).
Прочитајте повеќе: Како да избришете дупликати во Excel, но да останете еден (7 методи)
2. Вметнете VBA кодови за да отстраните дупликати од избраниот опсег на ќелии
Сега ќе се обидеме да изградиме макро што може да отстрани дупликати од кој било избран опсег на ќелии во работниот лист.
Чекор 1:
➤ Отворете нов прозорец VBA повторно и вметнете друг нов модул.
➤ Вметнете го овој код во модулот:
Код:
7492
➤ Се произведува макро наречено Отстрани_дупликати . Сакам да ги отстранам дупликатите редови врз основа на Колона 1 . Го користите вашиот.
Чекор 2:
➤ Вратете се на вашиот работен лист.
➤ Изберете вашиот сет на податоци и стартувајте го ова макро.
➤ Ќе го изврши истото како што го направи погоре. Отстранете ги редовите со дупликати во колоната 1 ( Име на ученикот).
Прочитајте повеќе: Како да се отстрани дупликат Редови во Excel (3 начини)
Слични читања
- Како да се отстранат дупликатите од колоната во Excel (3 методи)
- Excel VBA: Отстранете ги дупликатите од низа (2 примери)
- Како да отстраните дупликати и да ја задржите првата вредност во Excel (5 методи)
- ОтстраниДупликат редови освен за првото појавување во Excel (7 начини)
- Како да се отстранат двата дупликати во Excel (5 лесни начини)
3. Вметнете VBA макро за да отстраните дупликати од повеќе колони
Досега ги отстранивме редовите што имаат дупликати во колоната 1 ( Име на ученик ).
Но, всушност, имињата на двајца студенти може да бидат исти, тоа не секогаш значи дека е додадено погрешно ако две имиња се исти.
Но, ако личните карти на двајца студенти се исто така исти, тогаш тие се истиот ученик. Потоа редот треба да се отстрани.
Овој пат ќе развиеме макро што ќе го отстрани редот ако и името и ID на два реда се исти.
Чекор 1 :
➤ Повторно отворете нов прозорец VBA и вметнете друг нов модул.
➤ Вметнете го овој код во модулот:
Код:
2695
➤ Се произведува макро наречено Отстрани_дупликати . Сакам да ги отстранам дупликатите редови врз основа на Колона 1 и 2 (Име и ID) . Го користите вашиот.
Чекор 2:
➤ Вратете се на вашиот работен лист.
➤ Изберете поставете ги вашите податоци и стартувајте го ова макро.
➤ Овој пат ќе ги отстрани редовите само ако и името и студентскиот ID се исти.
Забелешка: Овде не ја отстрани Џенифер Марло бидејќи личните карти на двајцата студенти се различни, односно тие се двајца различни студенти.
Прочитај повеќе: Excel VBA: Отстранете ги дупликатите споредувајќи повеќе колони (3 примери)
Заклучок
Користејќи ги овие методи, можете да отстраните дупликати од сет на податоци во Excel користејќи VBA. Дали имате некакви проблеми? Слободно прашајте не.