Як сартаваць дыяпазон з дапамогай VBA ў Excel (6 прыкладаў)

  • Падзяліцца Гэтым
Hugh West

Веданне таго, як сартаваць дыяпазон з дапамогай 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. Будзем спадзявацца, што гэта заахвоціць вас выкарыстоўваць гэта больш упэўнена. Любыя пытанні ці прапановы не забывайце размяшчаць іх у полі для каментарыяў ніжэй.

Х'ю Уэст з'яўляецца вельмі дасведчаным трэнерам і аналітыкам Excel з больш чым 10-гадовым вопытам работы ў галіны. Ён мае ступень бакалаўра ў галіне бухгалтарскага ўліку і фінансаў і ступень магістра дзелавога адміністравання. Х'ю захапляецца навучаннем і распрацаваў унікальны падыход да навучання, які лёгка прытрымлівацца і зразумець. Яго экспертныя веды Excel дапамаглі тысячам студэнтаў і спецыялістаў па ўсім свеце палепшыць свае навыкі і атрымаць поспех у сваёй кар'еры. Праз свой блог Х'ю дзеліцца сваімі ведамі з усім светам, прапаноўваючы бясплатныя падручнікі па Excel і онлайн-трэнінгі, каб дапамагчы прыватным асобам і прадпрыемствам цалкам раскрыць свой патэнцыял.