Змест
Веданне таго, як сартаваць дыяпазон з дапамогай VBA ў Excel, эканоміць час і намаганні ў нашых штодзённых разліках. Хоць Excel забяспечвае сартаванне па змаўчанні. Выкарыстоўваючы Range.Sort метад , мы атрымліваем доступ да некалькіх параметраў для сартавання набору даных з большай колькасцю опцый, чым звычайна.
Спампаваць практычны сшытак
Спампуйце гэты сшытак для практыкаванняў падчас чытання гэтага артыкула.
Дыяпазон сартавання ў Excel.xlsm
Уводзіны ў аператар Range.Sort у Excel VBA
Мэта: Сартаваць дыяпазон даных вочак.
Сінтаксіс:
выраз .Сартаванне ( Ключ1 , Парадак1 , Ключ2 , Тып , Парадак2 , Ключ3 , Парадак3 , Загаловак , ПарадакКарыстальніцкі , MatchCase , Арыентацыя , SortMethod , DataOption1 , DataOption2 , DataOption3 )
Тут выраз прадстаўляе аб'ект Дыяпазон г.зн. ячэйку, радок, слупок або выбар вочак.
Аргументы:
Нам трэба прадаставіць тры асноўныя параметры для метаду Range.Sort . Яны:
Ключ – Дыяпазон ячэек з аднаго або некалькіх слупкоў, якія нам трэба адсартаваць.
Парадак – Укажыце парадак сартавання альбо па ўзрастанні або па змяншэнні.
Загаловак – абвясціце, ці маюць слупкі, якія трэба сартаваць, загаловак ці не.
6 прыкладаў сартавання дыяпазону ў Excel VBA
Уу гэтым артыкуле ў якасці набору дадзеных мы будзем выкарыстоўваць спіс імёнаў людзей з указаннем даты нараджэння і ўзросту. Мы будзем ужываць розныя метады для сартавання набору даных. Давайце азнаёмімся з артыкулам і патрэніруемся, каб асвоіць гэтыя метады.
1. Сартаванне дыяпазону аднаго слупка з дапамогай Excel VBA
У гэтым прыкладзе мы будзем сартаваць людзей ад старэйшага да малодшага . Давайце выканаем крокі, каб выкарыстоўваць Дыяпазон . Сартаванне метад , які будзе сартаваць слупок Узрост у у парадку змяншэння .
Крокі:
- Перайдзіце на ўкладку распрацоўшчыка на стужцы Excel каб націснуць на Visual Basic
- Затым выберыце опцыю Модуль на ўкладцы Уставіць , каб адкрыць новы модуль .
Цяпер мы змясцім наш код у сартаваць дыяпазон слупкоў Узрост .
1.1 Слупок з загалоўкам
Змесціце наступны код у візуальны рэдактар кода.
4725
Націсніце F5 або націсніце кнопку Выканаць , каб выканаць код.
Тлумачэнне:
У прыведзеным вышэй кодзе мы змяшчаем-
Выраз (аб'ект Range)=Range(“D4:D11”); слупок узросту з загалоўкам у ячэйцы D4 і значэннямі ў D5:D11.
Ключ = Дыяпазон (“D4”); ключ для сартавання.
Парадак= xlDescending; паколькі мы хочам сартаваць значэнні ад самага вялікага да найменшага мы ўсталёўваем парадак сартавання па па змяншэнні.
Загаловак =xlYes; На наступным скрыншоце мы бачым, што набор даных мае загаловак для кожнага з слупкоў.
1.2 Слупок без загалоўка
Змесціце наступнае код у візуальным рэдактары кода.
2784
Націсніце F5 або націсніце кнопку Выканаць , каб выканаць код.
Тлумачэнне:
У прыведзеным вышэй кодзе мы змясцілі-
Выраз (аб'ект Range)=Range(“D4 :D10”); слупок узрост без загалоўка мае значэнні ў D4:D10.
Ключ = Дыяпазон (“D4”); ключ для сартавання.
Парадак= xlDescending; паколькі мы хочам сартаваць значэнні ад самага вялікага да самага нізкага мы ўсталёўваем парадак сартавання як па змяншэнні.
Загаловак =xlNo; На наступным скрыншоце мы бачым, што набор даных не мае загалоўка.
Звязаны змест: Як сартаваць слупкі ў Excel без змешвання даных (3 спосабы)
2. Выкарыстанне кода VBA для сартавання дыяпазону некалькіх слупкоў у Excel
Каб паказаць сартаванне ў некалькіх слупках , нам трэба змяніць наш набор даных трохі. Мы ўставілі некалькі новых радкоў . У змененым наборы даных радкі 7, 8, і 9 маюць аднолькавыя значэнні для даты нараджэння і ўзросту але тры розныя назвы . Гэтыя імёны не у любым канкрэтным парадку па ўзрастанні або змяншэнні.
У гэтым прыкладзе мы ўпарадкуем імёны ў парадку ўзрастання . Давайце запусцім наступны код у рэдактары Visual Basic:
8180
Тлумачэнне:
Вышэй скрыншот, мы бачым, што ўзросты ў слупку D адсартаваны па па памяншэнні парадку. Мы дадалі яшчэ два параметры ў наш папярэдні код.
Key2: =Range(“B4”) , ключ для сартавання імёнаў.
Парадак2: =xlПа ўзрастанні , парадак для скарочаных імёнаў .
У выніку мы бачым імёны ў Радкі 7, 8 і 9 зараз адсартаваны ў алфавітным парадку ў парадку ўзрастання .
На наступным скрыншоце мы змянілі значэнне параметра Order2 для сартавання імёнаў у парадку змяншэння .
Дадатковая інфармацыя: Як сартаваць некалькі слупкоў у Excel (5 хуткіх падыходаў)
3. Двойчы пстрыкніце па загалоўку, каб адсартаваць дыяпазон слупкоў у Excel VBA
Функцыя сартавання па змаўчанні ў Excel не дазваляе сартаваць значэнні слупка па двайны пстрычка на загалоўку слупка . Але з дапамогай кода VBA мы можам гэта зрабіць. Давайце праілюструем гэту функцыянальнасць, прымяніўшы наступны код.
5480
У гэтым кодзе мы выкарыстоўвалі падзею BeforeDoubleClick , каб адключыць звычайны падвойны – націск які запускае рэжым рэдагавання ячэйкі. З гэтай падзеіпрацуе, калі мы двойчы – пстрыкнем на любым з загалоўкаў слупкоў гэта сартуе даныя слупка ў парадку ўзрастання .
Дадатковая інфармацыя: VBA для сартавання слупкоў у Excel (4 метады)
Падобныя паказанні:
- Як дадаць кнопку сартавання ў Excel (7 метадаў)
- Сартаваць унікальны спіс у Excel (10 карысных метадаў)
- Як выкарыстоўваць функцыю сартавання ў Excel VBA (8 прыдатных прыкладаў)
- Сартаваць дублікаты ў Excel (слупкі і радкі)
- Выпадковае сартаванне ў Excel ( Формулы + VBA)
4. Сартаваць дыяпазон слупкоў на аснове колеру фону з дапамогай Excel VBA
Мы можам сартаваць дыяпазон вочак у слупку на аснове іх колеру фону . Для гэтага нам трэба дадаць параметр пад назвай SortOn , які мае значэнне xlSortOnCellColor . Каб прадэманстраваць сартаванне, мы спачатку ўсталявалі розныя колеры фону для радкоў нашага набору даных .
Затым у Visual Basic рэдактар кода скапіруйце наступны код і націсніце F5 каб запусціць яго.
4613
На наступным скрыншоце мы бачым адсартаваны набор даных на аснове на іх колер фону.
Тлумачэнне:
- У гэтым прыкладзе мы назвалі працоўны ліст “ фон ”. Такім чынам, у кодзе мы паставілі « фон » у якасці імя актыўнага аркуша.
- Мы ўсталявалі B4 у якасці ключа і B4:D10 як дыяпазон . Код будзе сартаваць даныя на аснове ключа.
- Паколькі мы не ўказалі параметр загалоўка , код выконваецца па змаўчанні без загалоўка.
- Мы ўсталявалі параметр парадак як па ўзрастанні, так што ён сартаваў даныя ад меншых да большых значэнняў .
Дадатковая інфармацыя: Як сартаваць па колеры ў Excel (4 крытэрыі)
5. Ужывайце код VBA для сартавання дыяпазону слупкоў па колеры шрыфта
Ужываючы код VBA, мы можам сартаваць наш набор даных на аснове іх колеру . Па-першае, нам трэба расфарбаваць розныя радкі , каб праілюстраваць прыклад.
Ужыце прыведзены ніжэй код, каб сартаваць набор даных на аснове колеру шрыфта.
4203
Тлумачэнне:
- У гэтым напрыклад, мы назвалі рабочы ліст “ fontcolor ”. Такім чынам, у кодзе мы паставілі « fontcolor » у якасці назвы актыўнага аркуша.
- Мы ўсталявалі B4 у якасці ключа і B4:D11 як дыяпазон . Код будзе сартаваць даныя на аснове ключа.
- У гэтым прыкладзе мы таксама ўказалі параметр загалоўка як xlYes .
- Тут мы задаем парадак Параметр па ўзрастанні, так што ён адсартаваў даныя ад меншых да большых значэнняў .
- Значэнне параметра SortOn роўна
- Параметр арыентацыі ўтрымлівае значэнне xlTopToBottom паколькі яно з'яўляецца абавязковым.
- Колер для сартавання ў тэрмінах RGB, які мае значэннеад 0 да 255 .
Больш падрабязна: Як сартаваць два слупкі ў Excel для супадзення (абодва дакладныя і частковае супадзенне)
6. Змяніць арыентацыю на дыяпазон сартавання з дапамогай Excel VBA
Выкарыстоўваючы параметр арыентацыя , мы можам змяніць спосаб сартавання даных. У гэтым прыкладзе мы транспанавалі наш набор даных, каб сартаваць яго па гарызанталі .
Давайце паставім наступны код у рэдактары Visual Basic і націсніце F5, каб запусціць яго.
6715
Тут мы адсартавалі дадзеныя на аснове радка ўзросту у парадку ўзрастання з злева на направа . У кодзе мы задалі параметр orientation як xlSortRows .
Звязаны змест: Як аўтаматычна сартаваць некалькі слупкоў у Excel (3 спосабы)
Пра што трэба памятаць
- Параметр SortOn , які мы выкарыстоўвалі для сартавання дыяпазон слупкоў, заснаваны на колеры фону і колеры шрыфта можа выкарыстоўвацца толькі аб'ектам працоўнага аркуша . Мы не можам выкарыстоўваць яго з аб'ектам дыяпазону .
- Падзея BeforeDoubleClick сартуе даныя толькі па ўзрастанні.
Выснова
Цяпер мы ведаем, як сартаваць дыяпазон з дапамогай VBA ў Excel. Будзем спадзявацца, што гэта заахвоціць вас выкарыстоўваць гэта больш упэўнена. Любыя пытанні ці прапановы не забывайце размяшчаць іх у полі для каментарыяў ніжэй.