Преглед садржаја
Екцел Сорт &амп; Команда филтера има ограничен опсег на Подаци филтера . Али користећи ВБА можете Филтрирати податке у широком опсегу како желите. Овај чланак ће вам пружити 8 корисних примера за коришћење ВБА кода за Филтрирање података у Екцел-у помоћу ВБА кодова са живописним илустрацијама.
Преузмите свеску за вежбу
Можете преузети бесплатни Екцел шаблон одавде и сами вежбати.
ВБА код за филтрирање података.клсм
8 примера за коришћење ВБА кода за филтрирање података у Екцел-у
Хајде да се прво упознамо са нашим скупом података који представља пол, статус и статус неких ученика Старост .
1. Користите ВБА код за филтрирање података на основу текстуалних критеријума у програму Екцел
У нашем првом примеру, користићемо ВБА за Филтер само Мушки ученици из колоне Пол скупа података.
Кораци:
- Кликните десним тастером миша на наслову листа .
- Затим изаберите Прикажи код из контекстног менија .
Ускоро након тога ће се отворити ВБА прозор.
- Укуцајте следеће кодове у ит-
9024
- Касније, минимизирајте ВБА
Разбијање кода
- Овде сам направио Суб процедуру, Филтер_Дата_Тект() .
- Затим сам користио Ранге својство за декларисање нашег одговарајућег име листа и опсег
- Даље, користио сам метод аутоматског филтера да користим Критеријум по свом избору где Поље:=2 значи колона 2 . И Цритериа1:=”Мушки” да Филтрирај податке за Мушки.
- Након тога, на отворите Макро оквир за дијалог , кликните на на следећи начин: Програмер &гт; Макрои.
- Изаберите име макроа као што је наведено у кодовима .
- Коначно, само притисните Рун .
Сада погледајте да имамо само Подаци ученика након Филтрирања .
Прочитајте више: Екцел филтрира податке на основу Вредност ћелије (6 ефикасних начина)
2. Примените ВБА код на филтрирање података са више критеријума у једној колони
Овде ћемо Филтрирати за више критеријума у једној колони. Из колоне број три скупа података, Филтрираћемо за дипломске и постдипломске студенте.
Кораци:
- Пратите прва два корака првог примера да бисте отворили ВБА прозор .
- Касније, укуцајте следеће кодове у њему-
7171
- Затим минимизирајте ВБА
Разбијање кода
- Овде сам направио Суб процедуру, Филтер_Оне_Цолумн() .
- Затим смо користили својство Ранге да бисмо прогласили наше одговарајуће име листа и опсег
- Затим сам користио тхеМетод аутоматског филтера да користим Критеријум по мом избору где Поље:=3 значи колона 3 . Овде, Критеријум1:=”Градуате” и Цритериа2:=”Постградуате” да Филтрирај студентов статус .
- Коначно, користио сам Оператор:=клОр да применим ИЛИ услов Филтер за више критеријума.
- Овде тренутка, пратите трећи корак из првог примера да бисте отворили макро дијалог кутију .
- Касније, изаберите наведени име макроа и притисните Рун .
Убрзо након тога, добићете филтриране редове на основу више критеријума као што је слика испод.
Прочитајте више: Филтрирајте више критеријума у Екцел-у (4 погодна начина)
3. Примените ВБА код за филтрирање података са више критеријума у различитим колонама у Екцел-у
Сада ћемо Филтрирати за више критеријума- мушки и дипломирани ученици.
Кораци:
- Пратите прва два корака првог примера до отворите ВБА
- Касније, напишите следеће кодове у њега-
5377
- Након који минимизирају ВБА прозор .
Разбијање кода
- Овде сам направио Суб процедуру, Филтер_Дифферент_Цолумнс() .
- Онда сам користио наредбу Витх да користим Више колона .
- Затим се користи Распон својство за декларисање нашег одговарајућег име листа и опсег
- Даље, користио сам метод АутоФилтер да користим Критеријум од мој избор где Поље:=2 значи колона 2 а Поље:=3 значи колона 3 .
- Овде , изабрано Критеријуми1:=”Мушки” за колону Пол и Критеријум1:=”Дипломирани” за Статус колону у Филтер података из различитих колона .
- Затим пратите трећи корак из првог примера да бисте отворили Диалог оквир за макрое .
- Касније, изаберите наведени име макроа и притисните Рун .
Ево излаза више критеријума.
Прочитајте више: Екцел ВБА за филтрирање у истој колони према више критеријума (6 примера)
4. Користите ВБА код за филтрирање прве 3 ставке у Екцел-у
У овом примеру ћемо филтрирати три најбоља ученика према њиховој старости .
Кораци:
- Пратите прва два корака од првог примера да бисте отворили ВБА прозор .
- Онда укуцајте следеће кодове у њему-
5771
- Након тога минимизирајте ВБА прозор .
Разбијање кода
- Ево, ја креирао Суб процедуру, Филтер_Топ3_Итемс() .
- А затим користио Оператор:=клТоп10Итемс за Филтер за прва три подаци .
- Сада пратите трећи корак из првог примера да бисте отворили бок за дијалог макроа.
- Затим изаберите име макроа како је наведено у кодовима и притисните Рун .
Онда ћете добити излаз као на слици испод-
Прочитајте више: Како да филтрирате на основу вредности ћелије користећи Екцел ВБА (4 методе)
Слична очитавања
- Како да копирате и налепите када Филтер се примењује у Екцел-у
- Како филтрирати јединствене вредности у Екцел-у (8 једноставних начина)
- Филтрирајте више критеријума у Екцел-у помоћу ВБА (оба Типови И и ИЛИ)
- Како користити филтер текста у Екцел-у (5 примера)
- Како филтрирати по датуму у Екцел-у (4 брза Методе)
5. Користите ВБА код за филтрирање најбољих 50 процената у Екцел-у
Хајде да користимо ВБА кодове да филтрирамо најбољих педесет процената ученика на основу њиховог узраста .
Кораци:
- Прво, Пратите прва два корака првог примера да отворите ВБА прозор .
- Касније, укуцајте следеће кодове у њега-
9080
- Минимизирајте ВБА прозор .
Разбијање кода
- Овде сам направио Суб процедуру, Филтер_Топ50_Перцент() .
- Касније користио Оператор:=клТоп10Перцент до Филтрирајте најбољих педесет процената из колона-4 .
- У овом тренутку, пратите трећи корак од првог примера да бисте отворили Оквир за дијалог Макрои.
- Затим изаберите наведено Име макроа и притисните Рун .
Било је укупно 7 ученика тако да за 50 посто приказује отприлике три ученика .
Прочитајте више: Како користити формулу за проценат профита у Екцел-у (3 примера)
6 . Примените ВБА код на филтрирање података помоћу џокер знакова
Можемо да користимо замена знакова-* (звездица) у ВБА кодовима за филтрирање података у Екцел-у. Из Статус колоне , филтрираћемо само вредности које садрже 'Пост' .
Кораци:
- Пратите прва два корака првог примера да бисте отворили ВБА прозор .
- Затим напишите следећи кодови у њему-
7778
- Касније, минимизирајте ВБА прозор .
Рашчламба кода
- Овде сам направио Суб процедуру, Филтер_витх_Вилдцард() .
- Затим се користи Распон (“Б4”) да се подеси опсег.
- Следеће , користи се Аутоматски филтер до Филтер у Поље:=3 значи колона 3.
- Критеријуми1:=”*Пост *” да Филтрирај вредности које садрже 'Пост'.
- Сада пратите трећи корак од првог пример да бисте отворили дијалог Макроипоље.
- Изаберите наведени име макроа и притисните Рун .
Тада ћете добити жељени резултат.
Прочитајте више: Како додати филтер у Екцел (4 метода )
7. Уградите Екцел ВБА да бисте копирали филтриране податке у нови лист у Екцел-у
Погледајте да постоје неки филтрирани подаци у мом скупу података. Сада ћу их копирати у нови лист користећи ВБА . Ови кодови неће исправно функционисати у листу, мораћете да их примените у модулу.
Кораци:
- Притисните Алт+Ф11 да бисте отворили ВБА
- Затим кликните на Инсерт &гт; Модул за отворите модул .
- Сада напишите следеће кодове –
7074
- Онда минимизирајте ВБА
Разбијање кода
- Овде сам направио Суб процедуру, Цопи_Филтеред_Дата_НевСхеет() .
- Након тога декларисано са две променљиве- к Рнг Ас Ранге и кВС Као радни лист.
- Затим се користи ан ИФ израз за означите Филтеред
- Касније, користи се МсгБок за приказ излаза.
- Затим се користи Ворксхеетс(“Цопи Филтеред Дата”).АутоФилтер .Ранге да изаберете опсег Филтеред и користи Адд да додате нови лист.
- Коначно, Цопи Ранге(“Г4”) ће копирати Филтриране податке у нови лист .
- Касније, пратитетрећи корак из првог примера да отворите макро оквир за дијалог .
- Затим изаберите наведено име макроа и притисните Рун .
Сада видите да је Екцел отворио нови лист и копирао филтриране редове.
Прочитајте више: Пречица за Екцел филтер (3 брзе употребе са примерима)
8. Примените ВБА код на филтрирање података помоћу падајуће листе
У нашем последњем примеру, прво ћемо направити падајућу листу за пол, а затим ћемо је користити за филтрирање података. За то сам поставио критеријуме пола на другу локацију и направићемо падајућу листу у ћелији Д14 .
Кораци:
- Изаберите Ћелија Д14 .
- Затим кликните на на следећи начин: Подаци &гт; Алатке за податке &гт; Валидација података &гт; Валидација података.
Убрзо након тога, отвориће се дијалошки оквир .
Изаберите Листа из падајућег менија Дозволи .
Затим кликните на икону Отвори у изворном пољу .
Сада изаберите опсег критеријума и притисните дугме Ентер .
- У овом тренутку, само притисните ОК .
Сада је наша падајућа листа спремна.
- Сада Пратите прва два корака из првог примера да бисте отворили ВБА прозор .
- Онда напишите следеће кодове у њега-
7336
- Затим минимизирајте ВБАвиндов .
Разбијање кода
- Овде сам направио а Привате Суб процедуре, Ворксхеет_Цханге(БиВал Таргет Ас Ранге).
- Затим сам изабрао Радни лист из Опште и Промени из Декларације .
- Затим подесите Адресу да бисте сазнали локацију.
- Коначно је у оквиру ИФ наредбе коришћен АутоФилтер метод са Поље и Критеријуми
- Сада само изаберите критеријуме са падајуће листе и Филтер ће бити активиран .
Ево Филтриран излаз након што изаберете Мушки из падајућег менија .
Прочитајте више: Како филтрирати по листи на другом листу у Екцел-у (2 метода)
Одељак за вежбање
Добићете вежбе у Екцел датотеци датој изнад да бисте вежбали објашњене начине.
Закључак
Надам се да ће горе описане процедуре бити довољно добре за коришћење ВБА кода за филтрирање података у екцелу. Слободно поставите било које питање у одељку за коментаре и пошаљите ми повратне информације.