Содржина
За подредување во Excel со VBA , треба да го примените методот Range.Sort . Во оваа статија, ќе ви покажеме како да ја сортирате колоната во Excel со методот Range.Sort на VBA .
Преземете ја работната книга
Можете да ја преземете работната книга за бесплатна пракса Excel од овде.
Подреди колона со VBA.xlsm
Range.Sort Method во Excel VBA
Range.Sort методот во VBA сортира опсег на вредности во Excel. Овде Опсег е предметна променлива која го одредува опсегот на ќелиите што сакаме да ги сортираме по растечки или опаѓачки редослед.
Подолу се параметрите што треба да ги знаете за додека работите со овој метод.
Параметар | Потребен/ Изборен | Тип на податоци | Опис |
---|---|---|---|
Клуч | Изборен | Варијанта | Го одредува опсегот или колоната чии вредности треба да се подредат. |
Нарачка | Изборно | XlSortOrder | Го одредува редоследот по кој ќе се врши сортирањето.
|
Заглавие | Изборно | XlYesNoGuess | Одредува дали првиот ред содржи заглавија или не .
|
4 методи во имплементација на VBA за сортирање колона во Excel
Во овој дел, ќе знаете како да сортирате една колона со и без заглавие , повеќе колони со и без заглавија и како да сортирате само со двоен клик на заглавјето во колона во Excel.
1. Вметнете VBA за да подредите една колона без заглавие во Excel
Ако сакате да сортирате една колона во работниот лист на Excel со код VBA , тогаш следете ја чекори подолу.
Ова е нашата колона што ќе ја подредиме со VBA код.
Чекори:
- Притиснете Alt + F11 на тастатурата или одете во картичката Програмер -> Visual Basic за да се отвори Visual Basic Editor .
- Во скокачкиот прозорец со код, од лентата со мени , кликнете Вметни -> Модул .
- Копирајте го следниов код и залепете го во прозорецот за код.
1411
Вашиот код сега е подготвен за извршување.
Тука,
- Key1:=Range(„B5“) → Назначено B5 за кодот да знае која колона да ја подреди.
- Rerder1:=xlAscending → Одреди го редоследот како xlAscending за да ја подреди колоната во растечки редослед. Ако сакате да ја подредите колоната по опаѓачки редослед, тогаш напишете xlОпаѓачки наместо тоа.
- Header:= xlNo →Бидејќи нашата колона нема заглавие, затоа ја наведовме со опцијата xlNo .
- Притиснете F5 на тастатурата или од лентата со мени изберете Стартувај -> Стартувај Sub/UserForm . Можете исто така само да кликнете на мала икона Play во лентата под-мени за да го извршите макрото.
Ќе видите дека вашата колоната сега е подредена по растечки редослед .
Забележете дека овде рачно го дефиниравме опсегот на податоци како Опсег („B5:B15“ ) .
Ако сакате да ги промените податоците со додавање или бришење вредности, можете да го имплементирате следниов код кој автоматски се ажурира врз основа на ќелиите во базата на податоци.
5679
Забележете дека наместо тоа за рачно дефинирање опсег со Опсег(„B5:B15“) , напишавме, Опсег ( „B5“, Опсег(„B5“). End(xlDown)) .
Ова ќе ја подреди колоната врз основа на последната последователна пополнета ќелија во неа. Ако има празни ќелии, податоците ќе се земат предвид само до првата празна ќелија.
Прочитајте повеќе: VBA за сортирање табела во Excel (4 методи)
2. Вметнете VBA макро за подредување единечна колона со заглавие
Во претходниот дел, имавме база на податоци од една колона без заглавие, но сега имаме a колона со заглавие .
Овој пат ќе научиме како да ја сортираме со VBA макро .
Чекори:
- Исто како и претходно, отворете Visual Basic Editor од табулаторот Програмер и Вметнете Модул во прозорецот со код.
- Во прозорецот со код, копирајте го следниов код и залепете го.
5907
Вашиот код сега е подготвен за извршување.
Тука,
- Key1:=Range(“ B5“) → Наведено B5 за да му дадеме до знаење на кодот која колона да ја подреди.
- Rerder1:=xlОпаѓачки → Овој пат ќе ја подредиме колоната во опаѓачки редослед го наведов така наведениот редослед како xlОпаѓачки .
- Заглавие:= xlYes → Бидејќи нашата колона овојпат има заглавие, така го наведовме со xlYes опција.
- Изврши овој код и ќе ја добиете колоната со заглавие подредено во опаѓачки редослед .
Прочитајте повеќе: Како да го подредите ListBox со VBA во Excel (целосен водич)
Слични читања:
- Како да се подреди IP адресата во Excel (6 методи)
- [Решено!] Сортирањето на Excel не работи (2 решенија)
- Како да додадете копче за сортирање во Excel (7 методи)
- Ранг за сортирање e Користење VBA во Excel (6 примери)
- Како да подредите по име во Excel (3 примери)
3. VBA макро за подредување повеќе колони со или без заглавие
Можете и да сортирате повеќе колони во вашата база на податоци со VBA код.
Чекори:
- Како што беше прикажано претходно, отворете го Visual Basic Editor од картичката Developer и Вметни а Модул во прозорецот со код.
- Во прозорецот со код, копирајте го следниов код и залепете го.
5508
Вашиот код сега е подготвен за извршување.
Тука,
.SortFields.Add Key:=Range(“B4”), Order:=xlAscending
.SortFields.Add Key:=Range(“C4 ”), Ред:=xlАсцендент
Со овие две линии, дефинираме Ќелија B4 и C4 за да ги подредиме двете колони поврзани со нив во растечки редослед .
Како што имаме заглавија во нашата база на податоци, така наведовме Header = xlYes , инаку би напишале Header = xlНе внатре во кодот.
- Изврши овој код и ќе ги добиете колоните со заглавие подредени во растечки редослед .
4. Макро за подредување податоци со двоен клик на заглавието во Excel
Ако сакате лесно да ги сортирате податоците само со двоен клик на заглавието , можете да го направите тоа со VBA код.
Чекори:
- Десен-клик на картичката лист .
- Од списокот со опции што се појави, кликнете Погледнете го кодот .
- Ќе се појави прозорецот со кодот, копирајте го следниот код и залепете го таму.
9663
- Зачувај кодот.
- Сега вратете се на работниот лист од интерес и ако двоен клик на заглавијата ќе видите како колоните се реорганизираат.
Прочитајте повеќе: Како да ги сортирате и филтрирате податоците во Excel (целосно упатство)
Работи што треба да се запаметат
- Можете да креирате именуван опсег и наместо тоа да го користите кога ќе префрлите опсег на референци на ќелии во Подреди метод. На пример, ако сакате да го подредите опсегот A1:A10 , наместо да го пренесувате секој пат во кодот, можете да креирате именуван опсег од него, како што е „ SortRange “ и користете го со методот Range.Sort како Range(„SortRange“) .
- Ако не сте сигурни дали вашата база на податоци има заглавија или не, можете да му дозволите на системот да го одреди со користење на параметарот xlGuess .
Заклучок
Оваа статија ви покажа како да сортирајте ја колоната во Excel VBA . Се надевам дека овој напис беше многу корисен за вас. Слободно прашајте дали имате прашања во врска со темата.