VBA kārtošanas diapazons | Kā kārtot diapazonu programmā Excel VBA?

Excel VBA kārtošanas diapazons

Diapazona šķirošana VBA tiek veikta pēc range.sort metodes, tā ir diapazona metodes īpašība, ar kuru lietotājs var kārtot diapazonu secībā, šīs funkcijas argumenti ir Key1, Order1, Key2, Type, Order2, Key3 , Order3, Header, OrderCustom, MatchCase, Orientation, SortMethod, DataOption1, DataOption2, DataOption3, visi šīs funkcijas argumenti nav obligāti.

Datu organizēšanas vai strukturēšanas ietvaros ir svarīgi datus kārtot un padarīt tos sakārtotus. Līdzīga lieta ir pieejama arī ar VBA, tāpēc bieži uzdotais jautājums par jaunajiem VBA izglītojamajiem ir tas, kā mēs varam izmantot šo šķirošanas iespēju kā daļu no VBA automatizācijas, un šis raksts detalizēti iepazīstina jūs ar VBA kārtošanas diapazonu.

Ar Excel mēs visi esam iepazinušies ar šķirošanas iespēju, kas pieejama cilnē DATA.

Kārtot opciju VBA

Lai izmantotu šķirošanas opciju, vispirms mums jāizlemj, kāds ir mūsu datu diapazons, un jāpiemin tas pats datu diapazons, izmantojot objektu RANGE VBA, pēc tam tikai mēs varam piekļūt VBA opcijai “Kārtot”. Piemēram, pieņemsim, ka mans datu diapazons ir no A1 līdz D10, tad datu diapazonu mēs varam sniegt šādi.

Kods:

 Sub Sort_Range_Example () Range ("A1: D10") End Sub 

Tagad ielieciet punktu un atlasiet “SORT” metodi.

Kods:

 Sub Sort_Range_Example () diapazons ("A1: D10"). Kārtot End Sub 

Zemāk ir diapazona SORT metodes sintakse, lai gan sintaksei ir dažādi argumenti, mums visiem tie nav vajadzīgi mūsu VBA kodēšanai, tāpēc mums ir nepieciešami tikai daži elementi.

[Atslēga1]: Datu diapazonā, kuru mēs kārtojam, jānorāda, kura kolonna mums jāšķiro. Piemēram, datu diapazonā A1: D10, ja mēs vēlamies kārtot datus, pamatojoties uz B kolonnu, [Key1] būs Range (“B1”) .

[Order1]: Minētajā slejā argumentā [Key1] vajadzētu būt tādā secībā, kādā secībā. Mēs šeit varam izvēlēties divas iespējas “xlAscending” vai “xlDescending”.

Galvene: Minētajam datu diapazonam ir vai nav galvenes, ja jā, mēs varam piegādāt “xlYes” vai arī “xlNo”.

Šķirošanas diapazona piemērs VBA

Ņemsim piemēru no Excel VBA šķirošanas diapazona, lai to labāk izprastu.

Šo VBA Sort Range Excel veidni varat lejupielādēt šeit - VBA Sort Range Excel veidne

Piemēram, apskatiet zemāk esošo datu struktūru.

Mums ir dati no A1 līdz E17, tāpēc vispirms mēs datus sakārtosim, balstoties uz “valstiski”. Veiciet tālāk norādītās darbības, lai uzrakstītu kodu, lai kārtotu datus.

1. darbība: sāciet Excel makro procedūru.

Kods:

 Sub Sort_Range_Example () Beigas Sub 

2. darbība: vispirms pieminiet datu diapazonu, izmantojot objektu RANGE .

Kods:

 Sub Sort_Range_Example () Range ("A1: E17") End Sub 

3. solis: Tagad izvēlieties objekta Range metodi “ Kārtot ”.

Kods:

 Sort_Range_Example () diapazons ("A1: E17"). Kārtot End Sub 

4. solis: Tā kā mēs kārtojam datus, pamatojoties uz “valstiski”, mūsu 1. atslēgas argumentu kolonna būs diapazons (“B1”).

Kods:

 Sub Sort_Range_Example () diapazons ("A1: E17"). Kārtot 1. atslēgu: = Range ("B1"), beigu apakšsadaļa 

5. solis: Kad vajadzīgā kolonna ir pieminēta, mums jāpiemin, kādā secībā mums dati jāšķiro, un “Order1” būs “xlAscending” secība.

Kods:

 Sub Sort_Range_Example () diapazons ("A1: E17"). Kārtošanas atslēga1: = Range ("B1"), Order1: = xlAscending, End Sub 

6. solis: mūsu datiem ir galvenes, tāpēc galvene būs “xLYes”.

Kods:

 Sub Sort_Range_Example () diapazons ("A1: E17"). Kārtošanas atslēga1: = Range ("B1"), Order1: = xlAscending, Header: = xlYes End Sub 

Mēs esam pieminējuši visus elementus, kas nepieciešami datu kārtošanai. Izpildiet kodu, nospiežot F5 funkciju un taustiņu, un redziet rezultātu.

Izeja:

Dati ir sakārtoti, pamatojoties uz valstu nosaukumiem, sākot no A līdz Z.

Tagad pieņemsim, ka mums dati ir jāšķiro, balstoties uz valsti, kā arī mums ir jāšķiro “ Bruto pārdošanas apjomi ” no augstākā līdz zemākajam. Šādos gadījumos mums jāizmanto arī Key2 un Order2 argumenti.

Pēc Key1 un Order1 pieminēšanas izvēlēsimies Key2.

Kods:

 Sub Sort_Range_Example () diapazons ("A1: E17"). Kārtošanas atslēga1: = Range ("B1"), Order1: = xlAscending, Key2: = End Sub 

Tā kā mēs kārtojam datus, pamatojoties uz sleju “ Bruto pārdošanas apjomi ”, mūsu Key2 slejas nosaukums būs diapazons (“D1”).

Kods:

 Sub Sort_Range_Example () diapazons ("A1: E17"). Kārtošanas atslēga1: = Range ("B1"), Order1: = xlAscending, Key2: = Range ("D1"), End Sub 

Kad Key2 ir norādīts, mums jāizlemj par to, vai tas ir augošā secība vai dilstošā secība argumentā Order2, jo mēs šķirojam pārdošanas vērtību no lielākās uz mazāko, un mēs varam izvēlēties xlDescending pasūtījumu.

Kods:

 Sub Sort_Range_Example () Range ("A1: E17"). Sort Key1: = Range ("B1"), Order1: = xlAscending, Key2: = Range ("D1"), Order2: = xlDescending, Header: = xlYes End Sub 

Pēc tam norādiet Header argumentu kā “xYYes”. Tagad palaidiet kodu un uzziniet, kas notiek.

Izeja:

Iepriekš tas tika šķirots, balstoties tikai uz “valstiski”, bet šoreiz - vispirms “pēc valsts” un pēc tam arī uz “bruto pārdošanas apjomu” no augstākā līdz zemākajam.

Datu sakārtošanai mēs varam izmantot VBA metodi “ Kārtot ”.

Lietas, kas jāatceras par Excel VBA šķirošanas diapazonu

  • Kārtot ir VBA pieejamā metode, un, lai piekļūtu šai metodei, mums jānorāda, kāds šūnu diapazons tiks kārtots.
  • Ja datu diapazonā ir galvenes, mums jāizvēlas galvenes opcija kā “xlYes”, ja nē, mēs varam izvēlēties “xlNo”.

$config[zx-auto] not found$config[zx-overlay] not found