Екцел макрои можда нису тако свеобухватни као други алати за аутоматизацију, али ваљаност и ефикасност Екцел ВБА се не могу поткопати. Ако радите у Екцел-у и другим Мицрософт Оффице алатима као што су Ворд и Аццесс, не можете погрешити са ВБА и његовим могућностима.
МС Екцел је моћан алат који својим корисницима нуди мноштво опција. Од складиштења података до креирања аутоматизованих контролних табли, све то можете да урадите у програму Екцел и његовим табелама.
Ако желите да користите ВБА да аутоматизујете своје обавезе сортирања у Екцел-у, испробајте ове ефикасне макрое који се лако примењују.
Преузмите лажни скуп података
За почетак, можете да преузмете лажни скуп података да бисте радили на својим Екцел макро вештинама.
Будите сигурни, када се савладате са овим макроима и боље разумете како ствари функционишу, можете да промените код тако да одговара вашим сопственим табелама за посао или школу.
Можете преузети скуп података који се користи у овом чланку ако желите да га пратите.
Преузимање: Екцел Датасет
1. Сортирање једне колоне помоћу Екцел макроа
Користите овај једноставан код за сортирање колоне података у Екцел табели. Ако сте преузели лажни скуп података, можете покушати да сортирате колону Е (Продате јединице).
Отворите нову Екцел датотеку и сачувајте је помоћу датотеке Екцел радна свеска са омогућеним макроима (.клсм) врста радне свеске. Ова датотека ће похранити макро за сортирање ваших података из друге датотеке.
Повезан: Најбољи онлајн курсеви за савладавање напредног Екцел-а
Ви ћете контролисати своје датотеке из макро датотеке, која ће засебно комуницирати са вашим радним свескама.
Унесите следећи код:
Суб сортвитххеадерс()
Радне свеске("Финанциал Сампле.клск").Схеетс (1).Активирајте
Ранге("А1:П701").сорт Кеи1:=Ранге("е1"), Ордер1:=клАсцендинг, Хеадер:=клИес
Енд Суб
Где:
- Кључ 1: Дефинишите колону(е) коју желите да сортирате
- Ордер1: Начин наручивања (узлазно/опадајуће)
- Заглавље: Ако ваш садржај има заглавља, ова опција ће остати као клДа. Алтернативно, изаберите клНо.
Опсег ће се састојати од почетне ћелије и адресе завршне ћелије тако да све буде заробљено у сврхе сортирања. Резултат је да ће цео ваш скуп података бити сортиран на основу података у колони Е.
2. Сортирање динамичких података у једној колони
Можда постоје случајеви у којима је ваша почетна тачка дефинисана, али ваша крајња тачка је динамична. У том случају, можете учинити ваш код динамичким тако да аутоматски покупи крај опсега.
Да бисте прилагодили промену података, користите код у наставку:
Суб сортвитххеадерс()
Радне свеске("Финанциал Сампле.клск").Схеетс (1).Активирајте
Ранге("А1", Ранге("А1").Енд (клДовн)).сорт Кеи1:=Ранге("е2"), Ордер1:=клАсцендинг, Хеадер:=клИес
Енд Суб
Где:
- Крај (клДовн): Ова функција ће аутоматски одабрати последњу попуњену ћелију
Белешка: Ако формула наиђе на празну ћелију унутар колоне, сматраће претходну ћелију као крај опсега.
Повезан: Како да креирате прилагођене пречице на тастатури у Мицрософт Екцел-у
3. Сортирање више колона заједно
Можда постоје ситуације када желите да сортирате податке у више колона одједном. Да бисте то урадили, можете користити следећи код да бисте постигли своју сврху:
Сортирај више колона()
Са радним листовима ("Схеет1")
Са .Целлс (1, "А"). ЦуррентРегион
.Целлс.сорт Кеи1:=.Ранге("Б1"), Ордер1:=клАсцендинг, _
Кеи2:=.Ранге("Е1"), Ордер2:=клАсцендинг, _
Ориентатион:=клТопТоБоттом, Хеадер:=клИес
Завршити
Завршити
Енд Суб
4. Сортирање колона на више листова
Када имате посла са више листова, можда бисте желели да припремите своје податке за стављање на контролну таблу. Један од најважнијих аспеката припреме података је њихово сортирање и сређивање података у одређеном формату за презентовање вашим заинтересованим странама или клијентима.
Једна од опција је да ручно кружите кроз сваки лист, сортирате потребне колоне, а затим пређете на следећи корак. Алтернативно, зашто не дозволити ВБА да то уради уместо вас?
Сврха кода у наставку је да кружи кроз сваки доступан лист у радној свесци и на основу наведених колона сортира доступне податке.
Повезан: Мицрософт Екцел функције претраживања за ефикасније претраживање прорачунских табела
Ево како можете сортирати колоне на више листова:
Суб СортВС()
Дим вс Ас Ворксхеет
„Активирајте предвиђени радни лист
Воркбоокс("Финанциал Сампле.клск").Активирајте
„Аутоматски прелазите кроз сваки појединачни радни лист користећи фор петљу
За сваки вс у АцтивеВоркбоок-у. Листови
'активирајте сваки појединачни радни лист
вс. Активирати
„Дефинишите опсег, а затим сортирајте колону на основу ваших захтева. У овом случају, само једна колона се сортира.
Ранге("А1", Ранге("п1").Енд (клДовн)).сорт Кеи1:=Ранге("Е1"), Ордер1:=клДесцендинг, Хеадер:=клИес
„Команда се користи за прелазак на следећи радни лист, након што је претходни радни лист сортиран
Нект вс
Енд Суб
Све информације које почињу једноструким наводницима су ВБА коментари. Они се не извршавају током фазе извршења. Међутим, сваки ВБА коментар који додате је значајан додатак коду, јер можете дефинисати суштину, функционалност и друге релевантне делове унутар одељака кода.
5. Копирање сортираних података са једног листа на други
Замислите ситуацију у којој желите да сортирате податке и копирате цео скуп података (или његове делове) у новододати лист. У таквим случајевима можете користити доњи код да извршите задатак:
Суб СортВС()
Дим вс Ас Ворксхеет
„Активирајте предвиђени радни лист
Воркбоокс("Финанциал Сампле.клск").Активирајте
„Аутоматски прелазите кроз сваки појединачни радни лист користећи фор петљу
За сваки вс у АцтивеВоркбоок-у. Листови
'активирајте сваки појединачни радни лист
вс. Активирати
„Дефинишите опсег, а затим сортирајте колону на основу ваших захтева.
„У овом случају, само једна колона се сортира.
Ранге("А1", Ранге("п1").Енд (клДовн)).сорт Кеи1:=Ранге("Е1"), Ордер1:=клДесцендинг, Хеадер:=клИес
„Команда се користи за прелазак на следећи радни лист, након што је претходни радни лист сортиран
Нект вс
„Креирајте нови радни лист у радној свесци да бисте сачували нове податке
АцтивеВоркбоок. Листови. Додати. Име = "Резултати"
„Копирај и налепи сортиране податке у новододати лист
Схеетс("Схеет1").Ранге("А1:п701").Цопи Дестинатион:=Схеетс("Ресултс").Ранге("а1")
Енд Суб
Горњи код ће сортирати вредности у колони Е, додати нови лист Резултати у постојећу радну свеску и налепите сортиране резултате у ћелију А1.
Креирање макроа за сортирање у Екцел-у
Екцел ВБА је одличан језик који вам може уштедети много времена и труда. Користећи ВБА макрое, можете креирати опсежне контролне табле, лако сортирати податке са неколико кликова и са лакоћом обављати различите функције.
Срећом, Екцел-ова функционалност се не завршава са макроима. Погледајте неколико савета и трикова како бисте постали ефикаснији корисник Екцел-а.
Без обзира да ли сте мајстор у Екцел-у или тек почињете, ево девет најбољих веб локација и блогова које можете користити да научите неке савете и трикове.
Реад Нект
- Програмирање
- Мицрософт Екцел
- Макрои
Гаурав Сииал има две године искуства писања, писања за низ фирми за дигитални маркетинг и докумената о животном циклусу софтвера.
Претплатите се на наш билтен
Придружите се нашем билтену за техничке савете, рецензије, бесплатне е-књиге и ексклузивне понуде!
Кликните овде да бисте се претплатили