Преглед садржаја
Да бисте сортирали у Екцел-у помоћу ВБА , потребно је да примените метод Ранге.Сорт . У овом чланку ћемо вам показати како да сортирате колону у Екцел-у помоћу Ранге.Сорт методе ВБА .
Преузми радну свеску
Овде можете преузети бесплатну Екцел радну свеску за вежбање.
Сортирај колону помоћу ВБА.клсм
Ранге.Сорт метода у Екцелу ВБА
Ранге.Сорт метода у ВБА сортира опсег вредности у Екцел-у. Овде Ранге је променљива објекта која специфицира опсег ћелија које желимо сортирати у растућем или опадајућем редоследу.
У наставку су параметри које треба да знате о током рада са овом методом.
Параметар | Обавезно/ Опционо | Тип података | Опис |
---|---|---|---|
Кључ | Опционално | Варијанта | Одређује опсег или колону чије вредности треба сортирати. |
Ордер | Опционално | КслСортОрдер | Одређује редослед којим ће се извршити сортирање.
|
Хеадер | Оптионал | КслИесНоГуесс | Одређује да ли први ред садржи заглавља или не .
|
4 метода у имплементацији ВБА за сортирање колоне у Екцел-у
У овом одељку ћете знати како да сортирате једну колону са и без заглавља , више колона са и без заглавља и како сортирати само двоструким кликом на заглавље у колони у Екцел-у.
1. Уградите ВБА да бисте сортирали једну колону без заглавља у програму Екцел
Ако желите да сортирате једну колону у Екцел радном листу помоћу кода ВБА , следите кораци испод.
Ово је наша колона коју ћемо сортирати помоћу ВБА кода.
Кораци:
- Притисните Алт + Ф11 на тастатури или идите на картицу Програмер -&гт; Висуал Басиц да отворите Висуал Басиц Едитор .
- У искачућем прозору кода, са траке менија , кликните на Уметни -&гт; Модул .
- Копирајте следећи код и налепите га у прозор кода.
3593
Ваш код је сада спреман за покретање.
Овде,
- Кеи1:=Ранге(“Б5”) → Наведено Б5 да би код знао коју колону да сортира.
- Ордер1:=клАсцендинг → Навео је редослед као клАсцендинг да сортира колону у растућем редоследу. Ако желите да сортирате колону у опадајућем редоследу, упишите клДесцендинг уместо.
- Заглавље:= клНо →Пошто наша колона нема заглавље па смо га навели са клНо опцијом.
- Притисните Ф5 на тастатури или на траци менија изаберите Покрени -&гт; Покрените Суб/УсерФорм . Такође можете само да кликнете на малу икону Плаи на траци подменија да бисте покренули макро.
Видећете да колона је сада сортирана у растућем редоследу .
Приметите да смо овде ручно дефинисали опсег података као Распон(“Б5:Б15” ) .
Ако желите да промените податке додавањем или брисањем вредности, можете применити следећи код који се аутоматски ажурира на основу ћелија у скупу података.
3350
Приметите да уместо тога ручног дефинисања опсега помоћу Ранге(“Б5:Б15”) , написали смо, Ранге( “Б5”, Ранге(“Б5”). Енд(клДовн)) .
Ово ће сортирати колону на основу последње узастопно попуњене ћелије у њој. Ако постоје празне ћелије, подаци ће се узети у обзир само до прве празне ћелије.
Прочитајте више: ВБА за сортирање табеле у Екцел-у (4 метода)
2. Уметни ВБА макро за сортирање једне колоне са заглављем
У претходном одељку имали смо скуп података од једне колоне без заглавља, али сада имамо а колона са заглављем .
Овог пута ћемо научити како да је сортирамо помоћу ВБА макроа .
Кораци:
- На исти начин као и раније, отворите Висуал Басиц Едитор са картице Девелопер и Инсерт а Модуле у прозор кода.
- У прозору кода, копирајте следећи код и налепите га.
9260
Ваш код је сада спреман за покретање.
Овде,
- Кеи1:=Ранге(“ Б5”) → Наведено Б5 да би код знао коју колону да сортира.
- Ордер1:=клДесцендинг → Овај пут ћемо сортирати колону у силазни редослед, тако да је редослед наведен као клДесцендинг .
- Заглавље:= клИес → Како наша колона овог пута има заглавље, тако смо га навели са клИес опција.
- Покрените овај код и добићете колона са заглављем сортираном у опадајућем редоследу .
Прочитајте више: Како сортирати ЛистБок помоћу ВБА у Екцел-у (комплетан водич)
Слична читања:
- Како сортирати ИП адресу у Екцел-у (6 метода)
- [Решено!] Екцел сортирање не ради (2 решења)
- Како додати дугме за сортирање у Екцел (7 метода)
- Распон сортирања е Коришћење ВБА у Екцел-у (6 примера)
- Како сортирати по имену у Екцел-у (3 примера)
3. ВБА макро за сортирање више колона са или без заглавља
Можете и сортирати више колона у свом скупу података помоћу ВБА кода.
Кораци:
- Као што је претходно приказано, отворите Висуал Басиц Едитор са картице Програмер и Инсерт а Модул у прозору кода.
- У прозору кода, копирајте следећи код и налепите га.
4324
Ваш код је сада спреман за покретање.
Овде,
.СортФиелдс.Адд Кеи:=Ранге(“Б4”), Ордер:=клАсцендинг
.СортФиелдс.Адд Кеи:=Ранге(“Ц4 ”), Редослед:=клАсцендинг
У ова два реда дефинишемо ћелију Б4 и Ц4 да сортирамо две колоне повезане са их у узлазном редоследу .
Пошто имамо заглавља у нашем скупу података, тако смо навели Хеадер = клИес , иначе бисмо написали Хеадер = клНо унутар кода.
- Покрените овај код и добићете колоне са заглављем сортираним у растућем редоследу .
4. Макро за сортирање података двоструким кликом на заглавље у Екцел-у
Ако желите да сортирате податке са лакоћом само двоструким кликом на заглавље , то можете учинити помоћу ВБА код.
Кораци:
- Кликните десним тастером миша на картицу листа .
- Са листе опција која се појави, кликните на Прикажи код .
- Појавиће се прозор кода, копирајте следећи код и налепите га тамо.
6627
- Сачувај код.
- Сада се вратите на радни лист који вас занима и ако двапут кликните на заглавља видећете да се колоне реорганизују.
Прочитајте више: Како сортирати и филтрирати податке у Екцел (потпуно упутство)
Ствари које треба запамтити
- Можете креирати именовани опсег и користити га уместо тога када проследите опсег референци ћелија унутар Сорт метод. На пример, ако желите да сортирате опсег А1:А10 , уместо да га сваки пут прослеђујете унутар кода, можете да креирате његов именовани опсег, као што је „ СортРанге ” и користите га са методом Ранге.Сорт као што је Ранге(“СортРанге”) .
- Ако нисте сигурни да ли ваш скуп података има заглавља или не, можете дозволити систему да то одреди помоћу параметра клГуесс .
Закључак
Овај чланак вам је показао како да сортирајте колону у Екцел ВБА . Надам се да вам је овај чланак био од велике користи. Слободно питајте ако имате питања у вези са темом.