VBA sortimisvahemik - Kuidas sortida vahemikku Exceli VBA-s?

Lang L: none (table-of-contents)

Exceli VBA sortimisvahemik

Vahemiku sortimine VBA-s toimub meetodi range.sort järgi, see on vahemiku meetodi omadus, millega kasutaja saab vahemikku järjestada, selle funktsiooni argumendid on Key1, Order1, Key2, Type, Order2, Key3 , Order3, Header, OrderCustom, MatchCase, Orientation, SortMethod, DataOption1, DataOption2, DataOption3, kõik selle funktsiooni argumendid on valikulised.

Andmete korrastamise või struktureerimise osana on oluline andmed sortida ja korrastada. Sarnane asi on saadaval ka VBA puhul, nii et levinud küsimus VBA uute õppijate kohta on see, kuidas saaksime seda sorti kasutada VBA automatiseerimise osana, ja see artikkel juhendab teid üksikasjalikult VBA sortimise vahemikus.

Exceli abil oleme kõik tuttavad vahekaardil DATA pakutava sortimise võimalusega.

Sordi valik VBA-s

Sorteerimisvaliku kasutamiseks peame kõigepealt otsustama, milline on meie andmevahemik, ja mainima sama andmevahemikku, kasutades VBA-s objekti RANGE, seejärel pääseme VBA-sse valikule „Sortimine” ainult meie. Oletame näiteks, et minu andmevahemik on vahemikus A1 kuni D10, siis saame andmevahemiku esitada järgmiselt.

Kood:

Alam Sorteeri_vahemik_näide () Vahemik ("A1: D10") Lõpp alam

Nüüd pange punkt ja valige meetod "SORT".

Kood:

Alam sortimine_vahemik_näide () vahemik ("A1: D10"). Sorteeri lõpp alam

Allpool on vahemiku SORT-meetodi süntaks. Ehkki süntaksil on erinevad argumendid, pole meil neid kõiki vaja VBA kodeerimiseks, seega vajame vaid mõnda elementi.

(Key1): andmevahemikus, mida sorteerime, peame määrama, millise veeru peame sortima. Näiteks kui soovime andmete vahemikus A1: D10 sortida andmeid veeru B põhjal, siis (Key1) on vahemik (“B1”) .

(Order1): Nimetatud veerg (võti 1) argument peaks olema omamoodi millises järjekorras. Saame siin valida kaks valikut “xlAscending” või “xlDescending”.

Päis: mainitud andmevahemikul on päised või mitte. Kui jah, siis pakume "xlYes" või muidu "xlNo".

Näide sordivahemikust VBA-s

Võtame näite exceli VBA sortimisvahemikust, et sellest paremini aru saada.

Näiteks vaadake allpool olevat andmestruktuuri.

Meil on andmeid vahemikust A1 kuni E17, nii et kõigepealt sorteerime andmed lähtuvalt riigiti. Andmete sortimiseks koodi kirjutamiseks toimige järgmiselt.

1. samm: käivitage Exceli makroprotseduur.

Kood:

Alam Sorteeri_vahemik_näide () Lõpeta alam

2. samm: kõigepealt mainige andmevahemikku objekti RANGE abil .

Kood:

Alam Sordi_vahemik_näide () vahemik ("A1: E17") Lõpp alam

Samm 3: Nüüd vali " Sort " meetod Range objekti.

Kood:

Alam sortimise_vahemiku_näide () vahemik ("A1: E17"). Sordi lõpp alam

4. samm: kuna me sorteerime andmeid „riigiti” põhjal, on meie võtme 1 argumentide veerg vahemik („B1”).

Kood:

Alam Sorteeri_vahemik_näide () Vahemik ("A1: E17"). Sorteerimisklahv1: = Vahemik ("B1"), Lõpp-alam

5. samm: kui nõutav veerg on mainitud, peame mainima, millises järjekorras peame andmed sortima, ja „Order1” on „xlAscending” järjekord.

Kood:

Alam Sordi_vahemiku_näide () Vahemik ("A1: E17"). Sorteerimisklahv1: = Vahemik ("B1"), Järjekord1: = xlKõrgendav, Lõpp-alam

6. samm: meie andmetel on päised, seega on päis „xYES”.

Kood:

Alam Sorteeri_vahemiku_näide () Vahemik ("A1: E17"). Sorteerimisklahv1: = Vahemik ("B1"), Tellimus1: = xlAscending, Päis: = xlJah End Sub

We have mentioned all the elements which are required to sort the data. Execute the code by pressing the F5 function and key and see the result.

Output:

Data has been sorted based on Country names in the order of A to Z.

Now assume we need to sort the data based on Country-wise also we need to sort the “Gross Sales” from highest to lowest. In such cases, we need to make use of Key2 and Order2 arguments as well.

After mentioning Key1 & Order1, let’s choose Key2.

Code:

Sub Sort_Range_Example() Range("A1:E17").Sort Key1:=Range("B1"), Order1:=xlAscending,Key2:= End Sub

Since we are sorting the data based on the “Gross Sales” column, our Key2 column name will be Range(“D1”).

Code:

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

Once the Key2 is specified, we need to decide on the sorting patter of whether it is ascending order or descending order in Order2 argument. Since we are sorting the sales value from largest to smallest, we can choose “xlDescending” order.

Code:

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

After that, mention the Header argument as “xlYes.” Now run the code and see what happens.

Output:

Previously it has sorted based only on “Country-wise” but this time it has sorted based on “Country-wise” first and then also on “Gross Sales” from highest to lowest.

Nii saame andmete korrastamiseks kasutada VBA-s meetodit “ Sortimine ”.

Mida peaksite meeles pidama Exceli VBA sortimisvahemiku kohta

  • Sorteerimine on VBA-s saadaval olev meetod ja sellele meetodile juurdepääsuks peame määrama, millise lahtrivahemiku me sorteerime.
  • Kui andmevahemik sisaldab päiseid, peame valima päise valiku „xlYes”, kui ei, siis võime valida „xlNo”.

Huvitavad Artiklid...